src/HOL/BCV/Types0.thy
author wenzelm
Tue, 28 Mar 2000 12:28:24 +0200
changeset 8599 58b6f99dd5a9
parent 7626 5997f35954d7
permissions -rw-r--r--
fixed railqtoken;
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/Types0.thy
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
Types for the register machine
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     7
*)
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     8
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
     9
Types0 = SemiLattice +
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    10
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    11
datatype typ = Atyp | Btyp | Ctyp | Top
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    12
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    13
instance typ :: ord
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    14
instance typ :: plus
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    15
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    16
defs
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    17
le_typ "t1 <= t2 == (t1=t2) | (t1=Atyp & t2=Btyp) | (t2=Top)"
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    18
less_typ "(t1::typ) < t2 == t1 <= t2 & t1 ~= t2"
5997f35954d7 A new theory: a model of bytecode verification.
nipkow
parents:
diff changeset
    19
plus_typ "t1 + t2 == if t1<=t2 then t2 else if t2 <= t1 then t1 else Top"
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
end