| Some definitions of interest. |
|
iff | Def P  Q == (P  Q) & (P  Q) |
| | Thm* A,B:Prop. (A  B) Prop |
|
int_seg | Def {i..j } == {k: | i k < j } |
| | Thm* m,n: . {m..n } Type |
|
int_upper | Def {i...} == {j: | i j } |
| | Thm* n: . {n...} Type |
|
iter_via_intseg | Def Iter(f;u) i:{a..b }. e(i)
Def == if a< b f((Iter(f;u) i:{a..b-1 }. e(i)),e(b-1)) else u fi
Def (recursive) |
| | Thm* f:(A A A), u:A, a,b: , e:({a..b } A). (Iter(f;u) i:{a..b }. e(i)) A |
|
nat | Def == {i: | 0 i } |
| | Thm* Type |