Skip to content
Snippets Groups Projects
Commit f84a48c8 authored by gabrielhdt's avatar gabrielhdt
Browse files

fix in subtype, infix functions

parent 69893807
No related branches found
No related tags found
No related merge requests found
......@@ -12,7 +12,7 @@ set flag "print_implicits" on
symbol eqroot: Term uType ⇒ Term uType ⇒ Term uProp
rule eqroot &X &X → true // NOTE: non linear
and eqroot (Psub {&T} _) &U → eqroot &T &U
and eqroot &T (Psub &U _) → eqroot &T &U
and eqroot &T (Psub {&U} _) → eqroot &T &U
symbol eqtype: Term uType ⇒ Term uType ⇒ Term uProp
......
......@@ -9,11 +9,11 @@ definition arrow (D R: Term uType) ≔ prod D (λ_, R)
// functions [D, R: TYPE]
//
definition {|injective?|} {D: Term uType} {R:Term uType} (f: Term (arrow D R))
≔ forall (λx1, forall (λx2, imp (eq (f x1) (f x2)) (eq x1 x2)))
definition {|injective?|} {D} {R} (f: Term (arrow D R))
≔ forall (λx1, forall (λx2, imp (f x1 = f x2) (x1 = x2)))
definition {|surjective?|} {D: Term uType} {R: Term uType} (f: Term (arrow D R))
≔ forall (λy, ∃ (λx, eq (f x) y))
≔ forall (λy, ∃ (λx, (f x) = y))
definition {|bijective?|} {D: Term uType} {R: Term uType} (f: Term (arrow D R))
≔ ({|injective?|} f) ∧ ({|surjective?|} f)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment