Synthesis, Verification, and Inductive Learning Synthesis, Verification, and Inductive Learning
Sanjit A. Seshia
EECS Department UC Berkeley
Dagstuhl Seminar Verified SW Working Group August 2014 July 15, 2015
Synthesis, Verification, and Synthesis, Verification, and Inductive - - PowerPoint PPT Presentation
Synthesis, Verification, and Synthesis, Verification, and Inductive Learning Inductive Learning Sanjit A. Seshia EECS Department UC Berkeley Joint work with Susmit Jha (UTC) Dagstuhl Seminar Verified SW Working Group August 2014 July
Dagstuhl Seminar Verified SW Working Group August 2014 July 15, 2015
– 2 –
1.
2.
Counterexample-guided inductive synthesis (CEGIS) [Solar-Lezama et
al., ASPLOS’06] 3.
– 3 –
Inductive invariants Auxiliary specifications (e.g., pre/post-conditions,
Environment assumptions / Env model / interface
Abstraction functions / abstract models Interpolants Ranking functions Intermediate lemmas for compositional proofs Theory lemma instances in SMT solving Patterns for Quantifier Instantiation …
– 4 –
Inductive Invariants Abstraction Functions
– 7 –
– 8 –
– 9 –
Inductive Invariants
Abstraction Functions
– 10 –
Invoke Model Checker
Done
Valid Counter- example
Check Counterexample: Spurious?
Spurious Counterexample
YES
Abstract Domain System +Property Initial Abstraction Function
Done
NO
Generate Abstraction
Abstract Model + Property
Refine Abstraction Function
New Abstraction Function
Fail
[Anubhav Gupta, ‘06]
– 11 –
– 12 –
Invoke SAT Solver
Done
UNSAT SAT (model)
Invoke Theory Solver
“Spurious Model”
UNSAT
SMT Formula Initial Boolean Abstraction
Done
SAT
Generate SAT Formula
SAT Formula
Proof Analysis
Blocking Clause/Lemma
(“Counter- example”)
– 13 –
– 14 –
control Oracle)
* Between typical inductive synthesizer and machine learning algo
– 15 –
– 16 –
Active Learning from Queries and
Counterexample-Guided Abstraction-Refinement
Counterexample-Guided Inductive Synthesis
All rely heavily on Verification Oracle Choice of Verification Oracle determines
– 17 –
Fix a concept class
1.
2.
– 18 –
– 19 –
The minimum number of (labeled) examples a
– 20 –
– 21 –
The minimum number of (labeled) examples a
– 22 –
Counterexample-Guided Learning: TD gives a
Finite TD is necessary for termination
Finding Optimal Teaching Sequence is NP-hard
Finite TD may not be sufficient for termination!
– 23 –
– 24 –
– 25 –
– 26 –
– 27 –
CEGIS: Arbitrary counterexamples
MinCEGIS: Minimal counterexamples
– 28 –
CBCEGIS: Constant-bounded counterexamples
PBCEGIS: Positive-bounded counterexamples
– 29 –
– 31 –
Verification by reduction to Synthesis Counterexample-guided Synthesis is Inductive
Teaching Dimension relevant for analyzing
Termination analysis for CEGIS can be non-
Lots of scope for future work in understanding