Download presentation
Presentation is loading. Please wait.
1
Reduced Functional Consistency of Uninterpreted Functions
2
Technion Equality logic with uninterpreted functions formula : formula Ç formula | : formula | atom atom : term = term | Boolean-variable term: term-variable | function ( list of terms ) term-variables are defined over some (possible infinite) domain. Note that constants are functions with empty list of terms.
3
Technion Example: Circuit Transformations = ?
4
Technion Uninterpreted Functions (UF’s) The most general axiom for any function is functional consistency. Example: if x = y, then f ( x ) = f ( y ) for any function f. Functional consistency axiom scheme: x 1 = x 1 ’ Æ … Æ x n = x n ’ ! f ( x 1,…, x n ) = f ( x 1 ’,…, x n ’) Sometimes, functional consistency is all that is needed for the proof.
5
Technion For each function in UF : Number function instances (from the inside out) Replace each function instance with a new variable Condition UF with a functional consistency constraint for every pair of instances of the same function. UFs Equality Logic: Ackermann’s reduction F 2 ( F 1 ( x )) = 0 f 2 = 0 F ( ), G ( ),… (( x = f 1 ) f 1 = f 2 ) f 2 =0) Given a formula UF with uninterpreted functions f1f1 f2f2
6
Technion Ackermann’s reduction : Example Given the formula ( x 1 x 2 ) Ç ( F ( x 1 ) = F ( x 2 )) Ç ( F ( x 1 ) F ( x 3 )) which we want to check for validity, we first number the function instances: ( x 1 x 2 ) Ç ( F 1 ( x 1 ) = F 2 ( x 2 )) Ç ( F 1 ( x 1 ) F 3 ( x 3 ))
7
Technion Ackermann’s reduction : Example ( x 1 x 2 ) Ç ( F 1 ( x 1 ) = F 2 ( x 2 )) Ç ( F 1 ( x 1 ) F 3 ( x 3 )) Replace each function with a new variable, ( x 1 x 2 ) Ç ( f 1 = f 2 ) Ç ( f 1 f 3 ) Condition with Functional Consistency constraints:
8
Technion Ackermann’s reduction: summary Let UF be the EUF formula representing the verification condition After Ackermann’s reduction: Let be the result of replacing all UFs in UF with new variables Let FC be the corresponding set of functional consistency constraints Need to prove:
9
Technion The problem and the setting Ackermann’s reduction imposes a quadratic growth in the formula Practically, we have formulas with hundreds of function instances, resulting in thousands of constraints. No theorem-prover (as of 2002) could solve them. Our own decision procedure: BDD based + range allocation.
10
Technion The solution Find FC’ ½ FC such that
11
Technion The solution (cont’d) Possible solution: Abstraction-refinement loop
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.