lean2/tests/lean/run/univ1.lean

30 lines
638 B
Text
Raw Normal View History

import logic
namespace S1
axiom I : Type
definition F (X : Type) : Type := (X → Prop) → Prop
axiom unfold.{l} : I.{l} → F I.{l}
axiom fold.{l} : F I.{l} → I.{l}
axiom iso1 : ∀x, fold (unfold x) = x
end S1
namespace S2
universe u
axiom I : Type.{u}
definition F (X : Type) : Type := (X → Prop) → Prop
axiom unfold : I → F I
axiom fold : F I → I
axiom iso1 : ∀x, fold (unfold x) = x
end S2
namespace S3
context
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
end S3