Reduced Functional Consistency of Uninterpreted Functions.

Slides:



Advertisements
Similar presentations
Equations as Relations y = 2x is an equation with 2 variables When you substitute an ordered pair into an equation with 2 variables then the ordered pair.
Advertisements

1 Decision Procedures An algorithmic point of view Equality Logic and Uninterpreted Functions.
1 1 Regression Verification for Multi-Threaded Programs Sagar Chaki, SEI-Pittsburgh Arie Gurfinkel, SEI-Pittsburgh Ofer Strichman, Technion-Haifa Originally.
ECE Synthesis & Verification 1 ECE 667 Synthesis and Verification of Digital Systems Formal Verification Combinational Equivalence Checking.
Weizmann Institute Deciding equality formulas by small domain instantiations O. Shtrichman The Weizmann Institute Joint work with A.Pnueli, Y.Rodeh, M.Siegel.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
1 Regression-Verification Benny Godlin Ofer Strichman Technion.
Ofer Strichman, Technion 1 Decision Procedures in First Order Logic Part III – Decision Procedures for Equality Logic and Uninterpreted Functions.
1 Deciding separation formulas with SAT Ofer Strichman Sanjit A. Seshia Randal E. Bryant School of Computer Science, Carnegie Mellon University.
Technion 1 Generating minimum transitivity constraints in P-time for deciding Equality Logic Ofer Strichman and Mirron Rozanov Technion, Haifa, Israel.
Search in the semantic domain. Some definitions atomic formula: smallest formula possible (no sub- formulas) literal: atomic formula or negation of an.
Technion 1 (Yet another) decision procedure for Equality Logic Ofer Strichman and Orly Meir Technion.
Last time Proof-system search ( ` ) Interpretation search ( ² ) Quantifiers Equality Decision procedures Induction Cross-cutting aspectsMain search strategy.
LINEAR PROGRAMMING. Introduction n Introduction: n objective n Constraints n Feasible Set n Solution.
1 A propositional world Ofer Strichman School of Computer Science, Carnegie Mellon University.
Ofer Strichman, Technion 1 Decision Procedures in First Order Logic Part II – Equality Logic and Uninterpreted Functions.
Exponential and Logarithmic Equations Section 3.4.
Ofer Strichman, Technion Deciding Combined Theories.
Daniel Kroening and Ofer Strichman 1 Decision Procedures in First Order Logic Decision Procedures for Equality Logic.
7.4 Function Notation and Linear Functions
Lecture 6 Karnaugh Map. Logic Reduction Using Karnaugh Map Create a Karnaugh Map Circle (2, 4, 8..) 1’s. OR the minterm generated by each loop.
Deciding a Combination of Theories - Decision Procedure - Changki pswlab Combination of Theories Daniel Kroening, Ofer Strichman Presented by Changki.
Daniel Kroening and Ofer Strichman 1 Decision Procedures in First Order Logic Decision Procedures for Equality Logic Range Allocation.
Daniel Kroening and Ofer Strichman 1 Decision Proceduresfoe Equality Logic 4 Range Allocation.
SAT and SMT solvers Ayrat Khalimov (based on Georg Hofferek‘s slides) AKDV 2014.
4.4 Equations as Relations
CPSC 322, Lecture 22Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Computer Science cpsc322, Lecture 22 (Textbook Chpt 5.2) Oct, 26, 2010.
Lesson 2- 6: Radical Functions Advanced Math Topics.
Section 4-1: Introduction to Linear Systems. To understand and solve linear systems.
Type checking and inference Applications of typing axioms / rules are replaced with type equations. A solution to the equations assigns types for every.
Equations Reducible to Quadratic
Solving Quadratic Equations – Part 1 Methods for solving quadratic equations : 1. Taking the square root of both sides ( simple equations ) 2. Factoring.
Controller Synthesis for Pipelined Circuits Using Uninterpreted Functions Georg Hofferek and Roderick Bloem. MEMOCODE 2011.
Institute for Applied Information Processing and Communications (IAIK) – Secure & Correct Systems 1 Georg Hofferek and Roderick Bloem Institute for Applied.
Section 4.4 Logarithmic Functions. Definition:Definition: 2) A logarithm is merely a name for a certain exponent! 2) A logarithm is merely a name for.
1 Quadratic formula. y 2 Quadratic formula: Geometric interpretation Solve x 0.
1 First order theories (Chapter 1, Sections 1.4 – 1.5) From the slides for the book “Decision procedures” by D.Kroening and O.Strichman.
Trigonometric Equations OBJECTIVES: Use standard algebraic techniques to solve trigonometric equations Solve trigonometric equations of quadratic type.
5-6 Writing Equations from Patterns. Drill # 63 If then find each value: 1.f(0)2.f(1)3. f(-2) 4.g(w)5.g(x + 2)6.3[g(2)]
Notes Over 5.6 Quadratic Formula
Controller Synthesis for Pipelined Circuits Using Uninterpreted Functions Georg Hofferek and Roderick Bloem. MEMOCODE 2011.
1/20 Arrays Changki PSWLAB Arrays Daniel Kroening and Ofer Strichman Decision Procedure.
Warm Up Solve each equation for y. 1.x = -4y 2.x = 2y x = (y + 3)/3 4.x = -1/3 (y + 1)
Tuesday, October 15, 2013 Do Now:. 3-1 Solving Systems of Equations by Graphing Objectives: 1)solve systems of linear equations by graphing 2) Determine.
Solving Systems by Elimination 5.4 NOTES, DATE ____________.
1 A framework for eager encoding Daniel Kroening ETH, Switzerland Ofer Strichman Technion, Israel (Executive summary) (submitted to: Formal Aspects of.
Daniel Kroening and Ofer Strichman 1 Decision Procedures in First Order Logic Decision Procedures for Equality Logic.
Copyright © Cengage Learning. All rights reserved. 1 Functions and Their Graphs.
Daniel Kroening and Ofer Strichman 1 Decision Procedures for Equality Logic 1.
Lecture 11: Proof by Reflection
Decision Procedures in First Order Logic
Simultaneous Equations 1
Solving systems of equations
Equations Quadratic in form factorable equations
EQUATION IN TWO VARIABLES:
Functions and Their Graphs
6.1 One-to-One Functions; Inverse Function
Type checking and inference
Y Label each of the components of the parabola A: ________________ B: ________________ C: ________________ C B B 1 2.
Class Notes 11.2 The Quadratic Formula.
2 Understanding Variables and Solving Equations.
2 Understanding Variables and Solving Equations.
Equations in Two Variables
4.1 One-to-One Functions; Inverse Function
Chapter 3 Section 6.
Chapter 3 Section 6.
6.1 One-to-One Functions; Inverse Function
Equations Quadratic in form factorable equations
1. How do I Solve Linear Equations
Nonlinear Systems of Equations
Presentation transcript:

Reduced Functional Consistency of Uninterpreted Functions

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.

Technion Example: Circuit Transformations = ?

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.

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

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 ))

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:

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:

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.

Technion The solution Find FC’ ½ FC such that

Technion The solution (cont’d) Possible solution: Abstraction-refinement loop