2014-08-25 02:58:48 +00:00
|
|
|
import logic
|
2014-07-27 15:17:46 +00:00
|
|
|
|
|
|
|
namespace S1
|
2014-10-02 23:20:52 +00:00
|
|
|
axiom I : Type
|
2014-07-27 15:17:46 +00:00
|
|
|
definition F (X : Type) : Type := (X → Prop) → Prop
|
2014-10-02 23:20:52 +00:00
|
|
|
axiom unfold.{l} : I.{l} → F I.{l}
|
|
|
|
axiom fold.{l} : F I.{l} → I.{l}
|
|
|
|
axiom iso1 : ∀x, fold (unfold x) = x
|
2014-08-07 23:59:08 +00:00
|
|
|
end S1
|
2014-07-27 15:17:46 +00:00
|
|
|
|
|
|
|
namespace S2
|
|
|
|
universe u
|
2014-10-02 23:20:52 +00:00
|
|
|
axiom I : Type.{u}
|
2014-07-27 15:17:46 +00:00
|
|
|
definition F (X : Type) : Type := (X → Prop) → Prop
|
2014-10-02 23:20:52 +00:00
|
|
|
axiom unfold : I → F I
|
|
|
|
axiom fold : F I → I
|
|
|
|
axiom iso1 : ∀x, fold (unfold x) = x
|
2014-08-07 23:59:08 +00:00
|
|
|
end S2
|
2014-07-27 15:17:46 +00:00
|
|
|
|
|
|
|
|
|
|
|
namespace S3
|
|
|
|
section
|
|
|
|
hypothesis I : Type
|
|
|
|
definition F (X : Type) : Type := (X → Prop) → Prop
|
|
|
|
hypothesis unfold : I → F I
|
|
|
|
hypothesis fold : F I → I
|
|
|
|
hypothesis iso1 : ∀x, fold (unfold x) = x
|
|
|
|
end
|
2014-08-07 23:59:08 +00:00
|
|
|
end S3
|