Abstract:
Deductive verification and synthesis of binary addition programs are performed on the base of the rules of program correctness for statements of the predicate programming $P$ language. The paper presents the sketch of verification and synthesis of the programs for the Ripple carry, Carry look-ahead and Ling adders. The correctness conditions of the programs were translated into the specification language of the PVS verification system. The time needed to prove the program correctness conditions in the PVS is more than the time of the ordinary programming by a factor of 10. However, for program synthesis, development of PVS theories and proofs are easier and faster than that for program verification.
Keywords:predicate programming, deductive verification, program synthesis, total correctness of program.