doc-src/Tutorial/Misc/GCD.ML
author wenzelm
Thu, 04 Oct 2001 15:20:40 +0200
changeset 11670 59f79df42d1f
parent 5377 efb799c5ed3c
permissions -rw-r--r--
proof by cases and induction on types and sets (used to be specific for HOL);
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5377
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     1
Goal "gcd(m,0) = m";
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     2
by(resolve_tac [trans] 1);
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     3
by(resolve_tac gcd.rules 1);
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     4
by(Simp_tac 1);
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     5
qed "gcd_0";
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     6
Addsimps [gcd_0];
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     7
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     8
Goal "!!n. n ~= 0 ==> gcd(m,n) = gcd(n, m mod n)";
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
     9
by(resolve_tac [trans] 1);
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
    10
by(resolve_tac gcd.rules 1);
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
    11
by(Asm_simp_tac 1);
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
    12
qed "gcd_not_0";
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
    13
Addsimps [gcd_not_0];
efb799c5ed3c *** empty log message ***
nipkow
parents:
diff changeset
    14