feat(hott) add preliminary axiomatized truncation operator
This commit is contained in:
parent
0a1aab9ff9
commit
004a01629a
1 changed files with 19 additions and 0 deletions
19
hott/truncation.hlean
Normal file
19
hott/truncation.hlean
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
-- Copyright (c) 2014 Jakob von Raumer. All rights reserved.
|
||||||
|
-- Released under Apache 2.0 license as described in the file LICENSE.
|
||||||
|
-- Authors: Jakob von Raumer
|
||||||
|
|
||||||
|
open truncation
|
||||||
|
|
||||||
|
-- Axiomatize the truncation operator as long as we do not have
|
||||||
|
-- Higher inductive types
|
||||||
|
|
||||||
|
axiom truncate (A : Type) (n : trunc_index) : Type
|
||||||
|
|
||||||
|
axiom truncate.mk {A : Type} (n : trunc_index) (a : A) : truncate A n
|
||||||
|
|
||||||
|
axiom truncate.is_trunc (A : Type) (n : trunc_index) : is_trunc n (truncate A n)
|
||||||
|
|
||||||
|
axiom truncate.rec_on {A : Type} {n : trunc_index} {C : truncate A n → Type}
|
||||||
|
(ta : truncate A n)
|
||||||
|
[H : Π (ta : truncate A n), is_trunc n (C ta)]
|
||||||
|
(CC : Π (a : A), C (truncate.mk n a)) : C ta
|
Loading…
Reference in a new issue