Lazy.hascasl.output revision 41859342472c9349707a4bbd7a05340c639013c0
type t
op f : ? t -> t
op g : t -> (? t)
op a, b : t
op c, d : Unit ->? t
. (fun __=__[t] : forall a : Type . a_v-1 * a_v-1 ->? Unit)
((op f : ? t -> t)(op a : t),
(op g : t -> ? t)()(op c : Unit ->? t))
%% Type Constructors -----------------------------------------------------
Logical : Type := Unit ->? Unit
Pred : Type -> Type := \ a : Type . a_v-1 ->? Unit
Unit : Type := Unit
__*__ : Type+ -> Type+ -> Type
__-->__ : Type- -> Type+ -> Type
__-->?__ : Type- -> Type+ -> Type
__->__ : Type- -> Type+ -> Type
__->?__ : Type- -> Type+ -> Type
t : Type
%% Assumptions -----------------------------------------------------------
__/\__ : ? Unit * ? Unit ->? Unit %(fun)%
__<=>__ : ? Unit * ? Unit ->? Unit %(fun)%
__=__ : forall a : Type . a_v-1 * a_v-1 ->? Unit %(fun)%
__=>__ : ? Unit * ? Unit ->? Unit %(fun)%
__=e=__ : forall a : Type . a_v-1 * a_v-1 ->? Unit %(fun)%
__\/__ : ? Unit * ? Unit ->? Unit %(fun)%
__if__ : ? Unit * ? Unit ->? Unit %(fun)%
__when__else__
: forall a : Type . a_v-1 * ? Unit * a_v-1 ->? a_v-1 %(fun)%
a : t %(op)%
b : t %(op)%
bottom : forall a : Type . a_v-1 %(fun)%
c : Unit ->? t %(op)%
d : Unit ->? t %(op)%
def__ : forall a : Type . a_v-1 ->? Unit %(fun)%
f : ? t -> t %(op)%
false : Unit %(fun)%
g : t -> ? t %(op)%
not__ : ? Unit ->? Unit %(fun)%
true : Unit %(fun)%
�__ : ? Unit ->? Unit %(fun)%
%% Sentences -------------------------------------------------------------
(fun __=__[t] : forall a : Type . a_v-1 * a_v-1 ->? Unit)
((op f : ? t -> t)(op a : t),
(op g : t -> ? t)()(op c : Unit ->? t))