src/HOL/BCV/Types.ML
author berghofe
Thu, 07 Oct 1999 15:40:32 +0200
changeset 7786 cf9d07ad62af
parent 7626 5997f35954d7
child 7961 422ac6888c7f
permissions -rw-r--r--
Replaced update_new by update.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7626
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     1
(*  Title:      HOL/BCV/Types.ML
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     2
    ID:         $Id$
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     3
    Author:     Tobias Nipkow
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     4
    Copyright   1999 TUM
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     5
*)
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     6
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     7
Goalw [semilat_def,le_typ,plus_typ] "semilat (UNIV::typ set)";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     8
by(Auto_tac);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     9
qed "semilat_typ";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    10
AddIffs [semilat_typ];
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    11
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    12
Goal "{(x,y::'a::order). y<x}^+ = {(x,y::'a::order). y<x}";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    13
by(Auto_tac);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    14
 be trancl_induct 1;
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    15
 by(Blast_tac 1);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    16
 by(blast_tac (claset() addIs [order_less_trans]) 1);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    17
by(blast_tac (claset() addIs [r_into_trancl]) 1);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    18
qed "trancl_order1_conv";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    19
Addsimps [trancl_order1_conv];
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    20
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    21
Goalw [acyclic_def] "acyclic{(x,y::'a::order). y<x}";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    22
by(Simp_tac 1);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    23
qed "acyclic_order1";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    24
AddIffs [acyclic_order1];
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    25
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    26
Goalw [acc_def] "acc(UNIV::typ set)";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    27
br finite_acyclic_wf 1;
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    28
 by(fast_tac (claset() addIs [finite_SigmaI RSN (2,finite_subset)]) 1);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    29
by(blast_tac (claset() addIs [acyclic_subset]) 1);
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    30
qed "acc_UNIV_typ";
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    31
AddIffs [acc_UNIV_typ];