theory
imports "../utp_easy_parser"
begin
alphabet gcd_ss
x :: int
y :: guillemotleftY¬java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 120
abbreviation gcd_progjava.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 24
"gcd_prog X Y ≡
x := «X¬ ;;
y := « (sym_eval)
while ¬ (x = y)
invr x > 0 ∧ gcd(x,y) = gcd(«, «)
do
if x > y
hnx :=
else y := y - x
fi
od"
lemma "TRY(id ⊨
apply (sym_eval)
oops
lemma gcd_verify:
"{{«X¬ > 0 ∧ «Y > 0¬}} gcd_prog X Y {{x = gcd(«X¬, «Y¬)}}"
oops
end
¤ Dauer der Verarbeitung: 0.2 Sekunden
¤
*© Formatika GbR, Deutschland