LARA

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
sav08:insertion_into_doubly-linked_list [2009/03/18 09:21]
vkuncak
sav08:insertion_into_doubly-linked_list [2009/03/18 09:35]
vkuncak
Line 1: Line 1:
 ====== Insertion into Doubly-Linked List ====== ====== Insertion into Doubly-Linked List ======
 +
 +Doubly-linked list of size 3.
 +
 +Code:
  
 <​code>​ <​code>​
Line 41: Line 45:
   * source code   * source code
   * syntax tree   * syntax tree
-  * jast: simplified statements +  * jast: simplified statements ​(use option -jast to see it) 
-  * ast: guarded commands with loops +  * ast: guarded commands with loops (use option -ast to see it) 
-  * sast:+  * sast (use option -sast to see it):
     * eliminating loops with loop invariants by translation to guarded commands (as in [[Backward VCG with Loops]])     * eliminating loops with loop invariants by translation to guarded commands (as in [[Backward VCG with Loops]])
     * incorporate preconditions and postconditions using assume and assert     * incorporate preconditions and postconditions using assume and assert
   * compute weakest precondition with respect to '​true'​ - this is verification condition (VC)   * compute weakest precondition with respect to '​true'​ - this is verification condition (VC)
   * simplify VC, split into multiple formulas, eliminate easily provable formulas   * simplify VC, split into multiple formulas, eliminate easily provable formulas
 +    * use -v to view the remaining formulas
   * use theorem provers to prove the resulting formulas   * use theorem provers to prove the resulting formulas
 +    * some of the provers: cvcl (make symbolic link to cvc3), z3, SPASS, E, Vampire, BAPA, Isabelle (see also --help)
  
 In general, system also deals with: In general, system also deals with: