- SKIP_T_THM
-
|- !p. T_SPEC (p,MK_SKIP,p)
- ASSIGN_T_THM
-
|- !p x f. T_SPEC ((\s. p (BND x (f s) s)),MK_ASSIGN (x,f),p)
- SEQ_T_THM
-
|- !p q r c c'.
T_SPEC (p,c,q) /\ T_SPEC (q,c',r) ==> T_SPEC (p,MK_SEQ (c,c'),r)
- IF1_T_THM
-
|- !p q c b.
T_SPEC ((\s. p s /\ b s),c,q) /\ (!s. p s /\ ~(b s) ==> q s) ==>
T_SPEC (p,MK_IF1 (b,c),q)
- IF2_T_THM
-
|- !p q c c' b.
T_SPEC ((\s. p s /\ b s),c,q) /\ T_SPEC ((\s. p s /\ ~(b s)),c',q) ==>
T_SPEC (p,MK_IF2 (b,c,c'),q)
- PRE_STRENGTH_T_THM
-
|- !p p' q c. (!s. p' s ==> p s) /\ T_SPEC (p,c,q) ==> T_SPEC (p',c,q)
- POST_WEAK_T_THM
-
|- !p q q' c. T_SPEC (p,c,q) /\ (!s. q s ==> q' s) ==> T_SPEC (p,c,q')
- WHILE_T_THM
-
|- !p c b.
(!n. T_SPEC ((\s. p s /\ b s /\ (s x = n)),c,(\s. p s /\ s x < n))) ==>
T_SPEC (p,MK_WHILE (b,c),(\s. p s /\ ~(b s)))