doc-src/Intro/prod.thy
author wenzelm
Thu, 24 Jun 2010 14:31:01 +0200
changeset 37528 42804fb5dd92
parent 105 216d6ed87399
permissions -rw-r--r--
slightly more standard data merge: Symtax.merge (K true) avoids equality on abstract type Pretty.T and gracefully accepts overriding, Symtab.join prefers first entry as usual;

Prod = FOL +
types   "*" 2                                 (infixl 20)
arities "*"     :: (term,term)term
consts  fst     :: "'a * 'b => 'a"
        snd     :: "'a * 'b => 'b"
        Pair    :: "['a,'b] => 'a * 'b"       ("(1<_,/_>)")
rules   fst     "fst(<a,b>) = a"
        snd     "snd(<a,b>) = b"
end