src/HOLCF/Porder0.thy
author wenzelm
Wed, 12 Dec 2001 20:37:31 +0100
changeset 12484 7ad150f5fc10
parent 12338 de0f4a63baa5
child 14981 e73f8140af78
permissions -rw-r--r--
isatool expandshort;

(*  Title:      HOLCF/Porder0.thy
    ID:         $Id$
    Author:     Franz Regensburger
    License:    GPL (GNU GENERAL PUBLIC LICENSE)

Definition of class porder (partial order).
*)

Porder0 = Main +

	(* introduce a (syntactic) class for the constant << *)
axclass sq_ord < type

	(* characteristic constant << for po *)
consts
  "<<"          :: "['a,'a::sq_ord] => bool"        (infixl 55)

syntax (xsymbols)
  "op <<"       :: "['a,'a::sq_ord] => bool"        (infixl "\\<sqsubseteq>" 55)

axclass po < sq_ord
        (* class axioms: *)
refl_less       "x << x"        
antisym_less    "[|x << y; y << x |] ==> x = y"    
trans_less      "[|x << y; y << z |] ==> x << z"
 
end