Yongjian Li The State Key Laboratory of Computer Science Chinese Academy of Sciences William N. N. HungSynopsys Inc. Xiaoyu SongPortland State University.

Slides:



Advertisements
Similar presentations
Copyright 2000 Cadence Design Systems. Permission is granted to reproduce without modification. Introduction An overview of formal methods for hardware.
Advertisements

Certified Typechecking in Foundational Certified Code Systems Susmit Sarkar Carnegie Mellon University.
Planning based on Model Checking Dept. of Information Systems and Applied CS Bamberg University Seminar Paper Svetlana Balinova.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
An Introduction to the Model Verifier verds Wenhui Zhang September 15 th, 2010.
March 4, 2005Susmit Sarkar 1 A Cost-Effective Foundational Certified Code System Susmit Sarkar Thesis Proposal.
1 Dependent Types for Termination Verification Hongwei Xi University of Cincinnati.
What are Formal Verification Methods Mathematically based languages, techniques and tools for specifying and verifying systems Language – Clear unambiguous.
Efficient Reachability Analysis for Verification of Asynchronous Systems Nishant Sinha.
Combining Symbolic Simulation and Interval Arithmetic for the Verification of AMS Designs Mohamed Zaki, Ghiath Al Sammane, Sofiene Tahar, Guy Bois FMCAD'07.
6/14/991 Symbolic verification of systems with state machines David L. Dill Jeffrey Su Jens Skakkebaek Computer System Laboratory Stanford University.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
Presenter: PCLee – This paper outlines the MBAC tool for the generation of assertion checkers in hardware. We begin with a high-level presentation.
An Integration of Program Analysis and Automated Theorem Proving Bill J. Ellis & Andrew Ireland School of Mathematical & Computer Sciences Heriot-Watt.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Model checking dynamic states in GROOVE Arend Rensink Formal Methods and Tools University of Twente.
Formal Verification of Safety Properties in Timed Circuits Marco A. Peña (Univ. Politècnica de Catalunya) Jordi Cortadella (Univ. Politècnica de Catalunya)
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Validating High-Level Synthesis Sudipta Kundu, Sorin Lerner, Rajesh Gupta Department of Computer Science and Engineering, University of California, San.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
ESE601: Hybrid Systems Introduction to verification Spring 2006.
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
Formal verification Marco A. Peña Universitat Politècnica de Catalunya.
Formal Verification of SpecC Programs using Predicate Abstraction Himanshu Jain Daniel Kroening Edmund Clarke Carnegie Mellon University.
Propositional Calculus Math Foundations of Computer Science.
Combinational Logic Design
Logic Gates Circuits to manipulate 0’s and 1’s. 0’s and 1’s used for numbers Also to make decisions within the computer. In that context, 1 corresponds.
Using Mathematica for modeling, simulation and property checking of hardware systems Ghiath AL SAMMANE VDS group : Verification & Modeling of Digital systems.
Automatic Abstraction Refinement for GSTE Yan Chen, Yujing He, and Fei Xie Portland State University Jin Yang Intel Nov 13, 2007.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Lecture 12 – Design Procedure.
Systems Architecture I1 Propositional Calculus Objective: To provide students with the concepts and techniques from propositional calculus so that they.
Knowledge representation
Mathematical Modeling and Formal Specification Languages CIS 376 Bruce R. Maxim UM-Dearborn.
Word-level Sequential Memory Abstraction for Model Checking Per Bjesse November 19, 2008 TexPoint fonts used in EMF. Read the TexPoint manual before you.
1 Automatic Non-interference Lemmas for Parameterized Model Checking Jesse Bingham, Intel DEG FMCAD 2008.
1 Automatic Refinement and Vacuity Detection for Symbolic Trajectory Evaluation Orna Grumberg Technion Haifa, Israel Joint work with Rachel Tzoref.
Author: Graham Hughes, Tevfik Bultan Computer Science Department, University of California, Santa Barbara, CA 93106, USA Source: International Journal.
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
Formal Verification Lecture 9. Formal Verification Formal verification relies on Descriptions of the properties or requirements Descriptions of systems.
Propositional Calculus CS 270: Mathematical Foundations of Computer Science Jeremy Johnson.
Cost-Optimal Planning with Constraints and Preferences in Large State Spaces Stefan Edelkamp, Shahid Jabbar, Mohammed Nazih University of Dortmund.
Simultaneously Learning and Filtering Juan F. Mancilla-Caceres CS498EA - Fall 2011 Some slides from Connecting Learning and Logic, Eyal Amir 2006.
Logical Agents Chapter 7. Outline Knowledge-based agents Logic in general Propositional (Boolean) logic Equivalence, validity, satisfiability.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
May University of Glasgow Generalising Feature Interactions in Muffy Calder, Alice Miller Dept. of Computing Science University of Glasgow.
Lecture 5 1 CSP tools for verification of Sec Prot Overview of the lecture The Casper interface Refinement checking and FDR Model checking Theorem proving.
Verification & Validation By: Amir Masoud Gharehbaghi
HACNet Simulation-based Validation of Security Protocols Vinay Venkataraghavan Advisors: S.Nair, P.-M. Seidel HACNet Lab Computer Science and Engineering.
Verification of Behavioral Consistency in C by Using Symbolic Simulation and Program Slicer Takeshi Matsumoto Thanyapat Sakunkonchak Hiroshi Saito Masahiro.
Properties as Processes : FORTE slide Properties as Processes: their Specification and Verification Joel Kelso and George Milne School of Computer.
Static Techniques for V&V. Hierarchy of V&V techniques Static Analysis V&V Dynamic Techniques Model Checking Simulation Symbolic Execution Testing Informal.
CSSE501 Object-Oriented Development. Chapter 10: Subclasses and Subtypes  In this chapter we will explore the relationships between the two concepts.
Faithful mapping of model classes to mathematical structures Ádám Darvas ETH Zürich Switzerland Peter Müller Microsoft Research Redmond, WA, USA SAVCBS.
Interface specifications At the core of each Larch interface language is a model of the state manipulated by the associated programming language. Each.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
On the Relation Between Simulation-based and SAT-based Diagnosis CMPE 58Q Giray Kömürcü Boğaziçi University.
Model Checking Early Requirements Specifications in Tropos Presented by Chin-Yi Tsai.
1 Representing and Reasoning on XML Documents: A Description Logic Approach D. Calvanese, G. D. Giacomo, M. Lenzerini Presented by Daisy Yutao Guo University.
From Classical Proof Theory to P vs. NP
Sparkle a functional theorem prover
EA C461 – Artificial Intelligence Logical Agent
Overview Part 1 – Design Procedure Beginning Hierarchical Design
CSc4730/6730 Scientific Visualization
Department of Computer Science Abdul Wali Khan University Mardan
Introduction to Proofs Proof Methods and Strategy
Introduction to verification
OBJ first-order functional language based on equational logic
Presentation transcript:

Yongjian Li The State Key Laboratory of Computer Science Chinese Academy of Sciences William N. N. HungSynopsys Inc. Xiaoyu SongPortland State University Presented by Yongjian Li

Outline Introduction A formal netlist model Syntax and semantics of trajectory logic Symmetry reduction Applying symmetry reduction automatically Case study on CAMs Conclusion and future work 2

STE overview X value + symbolic simulation Provides a theoretical foundation for symbolic evaluation of partially ordered state space Used in Intel, Motorola etc Directly using EXLIF netlist as circuit model Specification is as Impoverished temporal logical specification Poweful capacity Sucesfully used for data-dominated circuits 3

Related work Classical semantic work in STE literature (Carl Seger et al., 1995; Mark D. Aagaard et al., ) usually assuming a next state function Y core techniques: symbolic indexing and parametric representation combining with theorem proving rather cumbersome to reason about combinational parts of a circuit A closure semantics on a netlist model(Roorda and Classen, 2005,2006) a closure function from the structure of a netlist, which can be seen as a special next state function convenient in reasoning about combinational parts sat-based refinement 4

Related work(cont.) Symmetry reduction in STE (Pandey 1997 ) use sub-graph isomorphism detecting symmetry manually did not answer why symmetry in circuit netlist structure implies symmetry in next state function Symmetry reduction in STE (Darbari 2006) propose a structured model -- a high level modeling language recording the symmetry of a circuit make a connection from the model to STE : proving the symmetry in the structured model derives symmetry in the corresponding next-state function 5

Our contribution A formal BLIF netlist model in Isabelle Formally define the structural symmetry A soundness theorem guaranteeing the correctness of symmetry reduction Applying symmetry reduction automatically as a tactic in Forte 6

A formal netlist model 7

Next state function Given a netlist nl, a next state function Y can be formally induced, which is a closure function, i.e., Y is monotonic. Y is idempotent. Y is extensive. (See Rooda et al, 2005 and Li et al, 2009 for the detail) 8 nl: a netlist g 1 : gate c a b tab 1 L 2 : Delay c’ c …. Y: a next state function Y s c’ = s (a) & s( b ) ….

Syntax and Semantics of trajectory formula 9

Syntax and Semantics of trajectoty assertion 10

Causal Subnetlist on an Assertion 11

Example 12

Evaluating an assertion in its causal subnetlist 13

Symmetric structures 14

Motivating Example 15 nl 0 nl 1

Symmetry properties 16

Symmetry reduction 17

Motivating Example 18

Substitutions on Trajectory Formulas 19 In forte, sometimes we need do substitution on Boolean guards in STE assertion in some context. After a substitution {ba 1 /ba 0,bb 0 /bb 1 }

Applying Symmetry Reduction Automatically--problem Have a lemma: Try to prove another lemma: 20

Overall strategy 21

Implementation 22

Codes –main body 23

Codes (1) –matching formulas 24

Codes (2) –Computing symmetry 25

Codes (2) –Computing symmetry 26

Case study on CAMs 27

Case study on CAMs 28 A fully-encoding style specification:

Symmetry Reduction in CAMs 29 Reduced to

Discussion For n-t-d CAMs (n – entries, t- tag width, d- data width) in full encoding style Need theorem proving techniques to make assertions can be applied by symmetry reduction Structure symmetry between two bits of a bit- vector such as match, dout in CAMS 30 No Sym reductionSym reduction For property on hitn*t2*t For property on dout(t+d)*n+t2t+d

Discussion (continued) Exploring structure symmetries needs time especially, when the properties checked involves many Next operators Compared and related with symbolic indexing Need human guidance to make assertions to be applied by symmetry reduction in ours, then can be done automatically Need human guidance to make an index symbolic indexing assertion, then fully automatic ally checked by running STE One indexing case is symmetric to each other 31

Conclusion and future work Theoretical result of symmetry reduction Formalize the correspondence between structure symmetry and property symmetry reformulated in a netlist based closure semantics framework Automatic symmetry reduction works on a netlist model, automatically checking structure symmetry online use heuristics inherited in verification problem itself 32

Conclusion and future work Link Isabelle with Forte? take both the advantage of Isabelle' strong theorem proving and Forte's symbolic simulation features difficulty: interface between each other Need more detail of Forte's document (but Forte can not be downloaded now!) 33

Question & Answer Thank You ! 34