OpDecls.hascasl.output revision cc355beebee3478e70435e57539597a67404b5b9
types s, t < t
ops a, b : s
%% op __ + __ : s -> s -> s, idem, assoc, comm;
op __+__ : s * s -> s
op __+__ : t * t -> t
ops a, b : t
op c : s = a + b;
op d : s = a + a;
op e : s * s -> s = __+__;
op f : s * s -> s = __+__;
op g : s * s = (a, b);
op h : s = a + b;
op i : s = (a : s) + (b : s);
op incr : s -> s
op i1 : s = incr a;
op i2 : s = incr a;
op i3 : s = incr a;
op __<=__<=__ : s * s * s -> s
op l1 : s = a <= b <= c;
op l2 : s * s * s -> s = __<=__<=__;
op l3 : s = a <= b <= c;
op l4 : s = a <= b <= c;
op l5 : s * s * s = (a, b, c);
op x : s
op y : s = (op a : s) <= (var x : s) <= (a : s);
op z : s = (x as s) + (x as t as s);
. x in s %(bla_label)%
. x in t;
types
s : Type;
t : Type
type
s < t
op __+__ : s * s -> s %(op)%
op __+__ : t * t -> t %(op)%
op __<=__<=__ : s * s * s -> s %(op)%
op a : s %(op)%
op a : t %(op)%
op b : s %(op)%
op b : t %(op)%
op c : s
%[op= (op __+__ : t * t -> t) ((op a : s), (op b : s)) as s]%
op d : s
%[op= (op __+__ : t * t -> t) ((op a : s), (op a : s)) as s]%
op e : s * s -> s %[op= (op __+__ : t * t -> t) as s * s -> s]%
op f : s * s -> s %[op= (op __+__ : t * t -> t) as s * s -> s]%
op g : s * s %[op= ((op a : s), (op b : s)) as s * s]%
op h : s
%[op= (op __+__ : t * t -> t) ((op a : s), (op b : s)) as s]%
op i : s
%[op= (op __+__ : t * t -> t) ((op a : s), (op b : s)) as s]%
op i1 : s %[op= (op incr : s -> s) (op a : s) as s]%
op i2 : s %[op= (op incr : s -> s) (op a : s) as s]%
op i3 : s %[op= (op incr : s -> s) (op a : s) as s]%
op incr : s -> s %(op)%
op l1 : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (op b : s), (op c : s))
as s]%
op l2 : s * s * s -> s
%[op= (op __<=__<=__ : s * s * s -> s) as s * s * s -> s]%
op l3 : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (op b : s), (op c : s))
as s]%
op l4 : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (op b : s), (op c : s))
as s]%
op l5 : s * s * s
%[op= ((op a : s), (op b : s), (op c : s)) as s * s * s]%
op x : s %(op)%
op y : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (var x : s), (op a : s))
as s]%
op z : s
%[op=
(op __+__ : t * t -> t) ((op x : s) as s, (op x : s) as t as s) as
s]%
. c = ((op __+__ : t * t -> t) ((op a : s), (op b : s)) as s)
%(def_c)%
. d = ((op __+__ : t * t -> t) ((op a : s), (op a : s)) as s)
%(def_d)%
. e = ((op __+__ : t * t -> t) as s * s -> s) %(def_e)%
. f = ((op __+__ : t * t -> t) as s * s -> s) %(def_f)%
. g = (((op a : s), (op b : s)) as s * s) %(def_g)%
. h = ((op __+__ : t * t -> t) ((op a : s), (op b : s)) as s)
%(def_h)%
. i = ((op __+__ : t * t -> t) ((op a : s), (op b : s)) as s)
%(def_i)%
. i1 = (incr (op a : s) as s) %(def_i1)%
. i2 = (incr (op a : s) as s) %(def_i2)%
. i3 = (incr (op a : s) as s) %(def_i3)%
. l1 = (((op a : s) <= (op b : s) <= c) as s) %(def_l1)%
. l2 = (__<=__<=__ as s * s * s -> s) %(def_l2)%
. l3 = (((op a : s) <= (op b : s) <= c) as s) %(def_l3)%
. l4 = (((op a : s) <= (op b : s) <= c) as s) %(def_l4)%
. l5 = (((op a : s), (op b : s), c) as s * s * s) %(def_l5)%
. y = ((a <= (var x : s) <= (op a : s)) as s) %(def_y)%
. z = ((op __+__ : t * t -> t) (x as s, x as t as s) as s)
%(def_z)%
. x in s %(bla_label)%
. x in t
*** Error 9.7, expected tuple argument for '__+__'