Research Article

Formal Verification of Hardware Components in Critical Systems

Listing 19

Formal definition of 4-bit binary parallel adder (without look-ahead carry).
(1)Definition fa (a A e: bool) : (boolbool)
(2) (Aa(Aa)e,Aae).
(3)Definition FA (f: boolboolbool(boolbool)) (a A e: bool)
(4): (boolbool) fa a A e.
(5)Definition FA4bit (D C B A d c b a e: bool)
(6): (boolboolboolboolbool)
(7)let ss1 snd(FA fa a A e) in
(8)let cc1 fst(FA fa a A e) in
(9)let ss2 snd(FA fa b B cc1) in
(10)let cc2 fst(FA fa b B cc1) in
(11)let ss3 snd(FA fa c C cc2) in
(12)let cc3 fst(FA fa c C cc2) in
(13)let ss4 snd(FA fa d D cc3) in
(14)let cc4 fst(FA fa d D cc3) in
(15)(cc4,ss4,ss3,ss2,ss1).