Skip to content

Latest commit

 

History

History
35 lines (30 loc) · 590 Bytes

README.md

File metadata and controls

35 lines (30 loc) · 590 Bytes

Formal Verification

Project from Formal Verification curricular unit.

The verifier should comprehend a parser and a VC-Gen and manage the proof of these conditions by interacting with an automatic proofing tool, in this case the Z3.

Sample code to demonstrate the syntax of our language we define here (Simple Language).

pre
  a>c;
  b>c;

program a (int x; int y;){
  int aux = 4;
  int c = y;
  aux = 10;
  print aux;
  try {
    while(x > 3) {
      inv x > c;
      aux = 10;
      print y;
    }
  }
  catch {
    print x;
  }
  print y;
}

postn
  a==5;
poste
  false;