OpDecls.hascasl.output revision a6f84880cea4485fba85b521d122eba73b0df70b
types s, t < t
ops a, b : s
%% op __ + __ : s -> s -> s, idem, assoc, comm;
op __+__ : s * s -> s
op __+__ : t * t -> t
op __+__ : t -> t -> t
ops a, b : t
op c : s = a + b;
op d : s = a + a : s;
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 __+__ : t -> t -> t %(op)%
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 __+__ : s * s -> s) ((op a : s), (op b : s))]%
op d : s
%[op= (op __+__ : s * s -> s) ((op a : s), (op a : s)) : s]%
op e : s * s -> s %[op= (op __+__ : s * s -> s)]%
op f : s * s -> s %[op= (op __+__ : s * s -> s)]%
op g : s * s %[op= ((op a : s), (op b : s))]%
op h : s %[op= (op __+__ : s * s -> s) ((op a : s), (op b : s))]%
op i : s %[op= (op __+__ : s * s -> s) ((op a : s), (op b : s))]%
op i1 : s %[op= (op incr : s -> s) (op a : s)]%
op i2 : s %[op= (op incr : s -> s) (op a : s)]%
op i3 : s %[op= (op incr : s -> s) (op a : s)]%
op incr : s -> s %(op)%
op l1 : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (op b : s), (op c : s))]%
op l2 : s * s * s -> s %[op= (op __<=__<=__ : s * s * s -> s)]%
op l3 : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (op b : s), (op c : s))]%
op l4 : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (op b : s), (op c : s))]%
op l5 : s * s * s %[op= ((op a : s), (op b : s), (op c : s))]%
op x : s %(op)%
op y : s
%[op=
(op __<=__<=__ : s * s * s -> s)
((op a : s), (var x : s), (op a : s))]%
op z : s
%[op= (op __+__ : s * s -> s) ((op x : s), (op x : s) as s)]%
. c = (op __+__ : s * s -> s) (a, b)
. d = ((op __+__ : s * s -> s) (a, a) : s)
. e = (op __+__ : s * s -> s)
. f = (op __+__ : s * s -> s)
. g = (a, b)
. h = (op __+__ : s * s -> s) (a, b)
. i = (op __+__ : s * s -> s) (a, b)
. i1 = incr a
. i2 = incr a
. i3 = incr a
. l1 = a <= b <= c
. l2 = __<=__<=__
. l3 = a <= b <= c
. l4 = a <= b <= c
. l5 = (a, b, c)
forall x : s . y = a <= (var x : s) <= a
. z = (op __+__ : s * s -> s) (x, x as s)
. true %(bla_label)%
. true
### Hint 7.14,
no kind found for 's'
expected: {Cpo}
found: {Type}
### Hint 7.14,
no kind found for 's'
expected: {Cppo}
found: {Type}
### Hint 8.14,
no kind found for 't'
expected: {Cpo}
found: {Type}
### Hint 8.14,
no kind found for 't'
expected: {Cppo}
found: {Type}
### Warning 9.4-9.10, expected tuple argument for '__+__'
### Hint 13.12-13.16,
in type of '((op a : s), (op b : s))'
typename 't' (9.14)
is not unifiable with type 's * s' (3.12)
### Hint 13.12-13.16, untypeable term (with type: t) '(a, b)'
### Hint 15.14-15.20,
in type of '((op a : s), (op a : s))'
typename 't' (9.14)
is not unifiable with type 's * s' (3.12)
### Hint 15.14-15.20, untypeable term (with type: t) '(a, a)'
### Hint 15.14-15.20,
rejected 't < s' of '(op __+__ : t * t -> t) ((op a : s), (op a : s))'
### Hint 17.8,
no kind found for 's'
expected: {Cpo}
found: {Type}
### Hint 17.8,
no kind found for 's'
expected: {Cppo}
found: {Type}
### Hint 17.6-17.24,
in type of '(op __+__ : t -> t -> t) as s * s -> s'
typename 't' (9.14)
is not unifiable with type 's * s' (17.12)
### Hint 19.8,
no kind found for 's'
expected: {Cpo}
found: {Type}
### Hint 19.8,
no kind found for 's'
expected: {Cppo}
found: {Type}
### Hint 19.6-19.25,
in type of '(op __+__ : t -> t -> t) as s * s -> s'
typename 't' (9.14)
is not unifiable with type 's * s' (19.12)
### Hint 21.8,
no kind found for 's'
expected: {Cpo}
found: {Type}
### Hint 21.8,
no kind found for 's'
expected: {Cppo}
found: {Type}
### Hint 23.23-23.26,
in type of '((op a : s), (op b : s))'
typename 't' (9.14)
is not unifiable with type 's * s' (3.12)
### Hint 23.23-23.26, untypeable term (with type: t) '(a, b)'
### Hint 25.23-25.30,
in type of '((op a : s), (op b : s))'
typename 't' (9.14)
is not unifiable with type 's * s' (25.34)
### Hint 25.23-25.32,
untypeable term (with type: t) '(a : s, b : s)'
### Hint 34.21,
no kind found for 's'
expected: {Cpo}
found: {Type}
### Hint 34.21,
no kind found for 's'
expected: {Cppo}
found: {Type}
### Hint 37.9,
no kind found for 's'
expected: {Cpo}
found: {Type}
### Hint 37.9,
no kind found for 's'
expected: {Cppo}
found: {Type}
### Hint 40.9,
no kind found for 's'
expected: {Cpo}
found: {Type}
### Hint 40.9,
no kind found for 's'
expected: {Cppo}
found: {Type}
### Hint 46.14-46.34,
in type of '((op x : s) as s, (op x : s) as t as s)'
typename 't' (9.14)
is not unifiable with type 's * s' (46.37)
### Hint 46.14-46.34,
untypeable term (with type: t) '(x as s, x as t as s)'