Formal Verification of n-bit ALU Using Theorem Proving

Automatic verification techniques, like automated theorem proving and model checking, cannot analyze large circuits due to the heavy requirements of memory and computational power. On the other hand, we can verify generic circuits, with universally quantified variables, using interactive theorem provers and thus overcome the above-mentioned limitations but at the cost of significant user guidance in the proof process. To facilitate this process and thus reduce the user involvement in the proofs, we recently proposed a higher-order-logic formalization of all the commonly used combinational circuits, like basic gates, adders, multiplier, multiplexers, demultiplexers, decoders and encoders, using the HOL4 theorem prover. In this project’s paper, we describe this formally verified library and illustrate its utilization by verifying an n-bit arithmetic logic unit (ALU).

[1]  Christoph Berg,et al.  Formal Verification of the VAMP Floating Point Unit , 2001, Formal Methods Syst. Des..

[2]  Parag K. Lala Principles of Modern Digital Design , 2007 .

[3]  Jun Sawada,et al.  ACL2SIX: A Hint used to Integrate a Theorem Prover and an Automated Verification Tool , 2006, 2006 Formal Methods in Computer Aided Design.

[4]  Sergey Tverdyshev A verified platform for a gate-level electronic control unit , 2009, 2009 Formal Methods in Computer-Aided Design.

[5]  Carl-Johan H. Seger,et al.  The formal verification of a pipelined double-precision IEEE floating-point multiplier , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[6]  John Harrison,et al.  Handbook of Practical Logic and Automated Reasoning , 2009 .

[7]  Natarajan Shankar,et al.  Effective Theorem Proving for Hardware Verification , 1994, TPCD.

[8]  Sandip Ray,et al.  Mechanized Certification of Secure Hardware Designs , 2007, 2007 Eighth International Workshop on Microprocessor Test and Verification.

[9]  Osman Hasan,et al.  Formalization of Laplace Transform Using the Multivariable Calculus Theory of HOL-Light , 2013, LPAR.

[10]  D. Kroening,et al.  Formal Verification of a Basic Circuits Library , 2001 .

[11]  Julien Schmaltz,et al.  TheoSim: combining symbolic simulation and theorem proving for hardware verification , 2004, Proceedings. SBCCI 2004. 17th Symposium on Integrated Circuits and Systems Design (IEEE Cat. No.04TH8784).

[12]  Thomas Braibant,et al.  Coquet: A Coq Library for Verifying Hardware , 2011, CPP.

[13]  Carl-Johan H. Seger,et al.  An industrially effective environment for formal hardware verification , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  Christine Paulin-Mohring,et al.  Circuits as Streams in Coq: Verification of a Sequential Multiplier , 1995, TYPES.

[15]  Thomas Kropf,et al.  Theorem provers in circuit design : theory, practice and experience : Second International Conference, TPCD '94, Bad Herrenalb, Germany, September 26-28, 1994 : proceedings , 1995 .

[16]  Osman Hasan,et al.  A Library for Combinational Circuit Verification Using the HOL Theorem Prover , 2018, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[17]  John Harrison Formal verification at Intel , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

[18]  Sofiène Tahar,et al.  Formal Verification Methods , 2015 .

[19]  Warren A. Hunt,et al.  Verifying VIA Nano microprocessor components , 2010, Formal Methods in Computer Aided Design.

[20]  Jason Baumgartner,et al.  Hybrid verification of a hardware modular reduction engine , 2011, 2011 Formal Methods in Computer-Aided Design (FMCAD).

[21]  Youngsik Kim,et al.  PROVERIFIC: experiments in employing (PSL) standard assertions in theorem-proving-based verification , 2005, 48th Midwest Symposium on Circuits and Systems, 2005..

[22]  Mark Aagaard,et al.  Divider Circuit Verification with Model Checking and Theorem Proving , 2000, TPHOLs.

[23]  Sandip Ray,et al.  Deductive Verification of Pipelined Machines Using First-Order Quantification , 2004, CAV.

[24]  Sergey Tverdyshev,et al.  Combination of Isabelle/HOL with Automatic Tools , 2005, FroCoS.

[25]  Sofiène Tahar,et al.  Hierarchical formal verification using a hybrid tool , 2003, International Journal on Software Tools for Technology Transfer.

[26]  Karem A. Sakallah,et al.  Automatic abstraction and verification of verilog models , 2004, Proceedings. 41st Design Automation Conference, 2004..

[27]  Cunxi Yu,et al.  Verification of arithmetic datapath designs using word-level approach — A case study , 2015, 2015 IEEE International Symposium on Circuits and Systems (ISCAS).