Built with Alectryon, running Coq+SerAPI v8.18.0+0.18.3. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus. On Mac, use instead of Ctrl.
[Loading ML file number_string_notation_plugin.cmxs (using legacy method) ... done]
From HoTT Require Import PropResizing.PropResizing. From HoTT Require Import Spaces.Card. From HoTT.Sets Require Import Ordinals Powers. (** This file contains a construction of the Hartogs number. *) (** We begin with some results about changing the universe of a power set using propositional resizing. *)
H: PropResizing
C: Type
p: C -> HProp

C -> HProp
H: PropResizing
C: Type
p: C -> HProp

C -> HProp
exact (fun a => Build_HProp (resize_hprop@{j k} (p a))). Defined.
H: PropResizing
ua: Univalence
C: Type

IsInjective power_inj
H: PropResizing
ua: Univalence
C: Type

IsInjective power_inj
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp

power_inj p = power_inj p' -> p = p'
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp

(fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a))) -> p = p'
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))

p = p'
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))

p == p'
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C

p a = p' a
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p a

p' a
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p' a
p a
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p a

p' a
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p a

resize_hprop (p' a)
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p a

(fun a : C => Build_HProp (resize_hprop (p' a))) a
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p a

Build_HProp (resize_hprop (p a))
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p a

p a
apply Ha.
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p' a

p a
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p' a

resize_hprop (p a)
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p' a

(fun a : C => Build_HProp (resize_hprop (p a))) a
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p' a

Build_HProp (resize_hprop (p' a))
H: PropResizing
ua: Univalence
C: Type
p, p': C -> HProp
q: (fun a : C => Build_HProp (resize_hprop (p a))) = (fun a : C => Build_HProp (resize_hprop (p' a)))
a: C
Ha: p' a

p' a
apply Ha. Qed. (* TODO: Could factor this as something keeping the [HProp] universe the same, followed by [power_inj]. *)
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B

(C -> HProp) -> B -> HProp
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B

(C -> HProp) -> B -> HProp
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
p: C -> HProp
b: B

HProp
exact (Build_HProp (resize_hprop (forall a, f a = b -> p a))). Defined.
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B

IsInjective f -> IsInjective (power_morph f)
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B

IsInjective f -> IsInjective (power_morph f)
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'

p = p'
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'

p == p'
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C

p a = p' a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a

p' a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a
p a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a

p' a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a
Hp: power_morph f p (f a)

p' a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a
power_morph f p (f a)
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a
Hp: power_morph f p (f a)

p' a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a
Hp: power_morph f p' (f a)

p' a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a
Hp: forall a0 : C, f a0 = f a -> p' a0

p' a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a
Hp: forall a0 : C, f a0 = f a -> p' a0

f a = f a
reflexivity.
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a

power_morph f p (f a)
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a

forall a0 : C, f a0 = f a -> p a0
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p a

p a
apply Ha.
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a

p a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a
Hp: power_morph f p' (f a)

p a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a
power_morph f p' (f a)
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a
Hp: power_morph f p' (f a)

p a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a
Hp: power_morph f p (f a)

p a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a
Hp: forall a0 : C, f a0 = f a -> p a0

p a
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a
Hp: forall a0 : C, f a0 = f a -> p a0

f a = f a
reflexivity.
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a

power_morph f p' (f a)
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a

forall a0 : C, f a0 = f a -> p' a0
H: PropResizing
ua: Univalence
C, B: Type
f: C -> B
Hf: IsInjective f
p, p': C -> HProp
q: power_morph f p = power_morph f p'
a: C
Ha: p' a

p' a
apply Ha. Qed. (** We'll also need this result. *)
H: PropResizing
H0: Univalence
B, C: Ordinal

B < C -> card B ≤ card C
H: PropResizing
H0: Univalence
B, C: Ordinal

B < C -> card B ≤ card C
H: PropResizing
H0: Univalence
B, C: Ordinal
B_C: B < C

card B ≤ card C
H: PropResizing
H0: Univalence
B, C: Ordinal
B_C: B < C

{i : Build_HSet B -> Build_HSet C & IsInjective i}
H: PropResizing
H0: Univalence
B, C: Ordinal
B_C: B < C

{i : ordinal_carrier B -> ordinal_carrier C & IsInjective i}
H: PropResizing
H0: Univalence
B, C: Ordinal
B_C: B < C

{i : ordinal_carrier ↓((H ◁ B) B_C) -> ordinal_carrier C & IsInjective i}
H: PropResizing
H0: Univalence
B, C: Ordinal
B_C: B < C

IsInjective out
H: PropResizing
H0: Univalence
B, C: Ordinal
B_C: B < C

IsSimulation out
apply is_simulation_out. Qed. (** * Hartogs number *) Section Hartogs_Number. Declare Scope Hartogs. Open Scope Hartogs.
Identifier '𝒫' now a keyword
Local Coercion subtype_as_type' {X} (Y : 𝒫 X) := { x : X & Y x }. Universe A. Context {univalence : Univalence} {prop_resizing : PropResizing} {lem: ExcludedMiddle} (A : HSet@{A}). (* The Hartogs number of [A] consists of all ordinals that embed into [A]. Note that this construction necessarily increases the universe level. *)
The command has indeed failed with message: In environment univalence : Univalence prop_resizing : PropResizing lem : ExcludedMiddle A : HSet The term "{B : Ordinal & card B ≤ card A}" has type "Type@{max(Hartogs.757,Hartogs.758)}" while it is expected to have type "Type@{A}" (universe inconsistency: Cannot enforce Hartogs.757 <= A because A < Hartogs.757).
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

Ordinal
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

Ordinal
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type

Ordinal
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

Ordinal
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

IsOrdinal carrier lt
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

IsHSet {B : Ordinal & card B ≤ card A}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
is_mere_relation {B : Ordinal & card B ≤ card A} lt
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
Lt Ordinal
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
IsOrdinal Ordinal ?Q
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
IsInjective pr1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
IsSimulation pr1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

IsInjective pr1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
IsSimulation pr1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

IsInjective pr1
apply isinj_embedding, (mapinO_pr1 (Tr (-1))). (* Faster than [exact _.] *)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

IsSimulation pr1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

forall a a' : {B : Ordinal & card B ≤ card A}, a < a' -> a.1 < a'.1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
forall (a : {B : Ordinal & card B ≤ card A}) (b : Ordinal), b < a.1 -> hexists (fun a' : {B : Ordinal & card B ≤ card A} => ((a' < a) * (a'.1 = b))%type)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

forall a a' : {B : Ordinal & card B ≤ card A}, a < a' -> a.1 < a'.1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
a, a': {B : Ordinal & card B ≤ card A}
a_a': a < a'

a.1 < a'.1
exact a_a'.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & card B ≤ card A}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type

forall (a : {B : Ordinal & card B ≤ card A}) (b : Ordinal), b < a.1 -> hexists (fun a' : {B : Ordinal & card B ≤ card A} => ((a' < a) * (a'.1 = b))%type)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
small_B: Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}
C: Ordinal
C_B: C < B

Trunc (-1) {a' : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} & ((a' < (B; small_B)) * (a'.1 = C))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
small_B: Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}
C: Ordinal
C_B: C < B

{a' : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} & ((a' < (B; small_B)) * (a'.1 = C))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
small_B: Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}
C: Ordinal
C_B: C < B

Trunc (-1) {i : ordinal_carrier C -> A & IsInjective i}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B, C: Ordinal
C_B: C < B

Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i} -> Trunc (-1) {i : ordinal_carrier C -> A & IsInjective i}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B, C: Ordinal
C_B: C < B

{i : ordinal_carrier B -> A & IsInjective i} -> Trunc (-1) {i : ordinal_carrier C -> A & IsInjective i}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B, C: Ordinal
C_B: C < B
f: ordinal_carrier B -> A
isinjective_f: IsInjective f

Trunc (-1) {i : ordinal_carrier C -> A & IsInjective i}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B, C: Ordinal
C_B: C < B
f: ordinal_carrier B -> A
isinjective_f: IsInjective f

{i : ordinal_carrier C -> A & IsInjective i}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
b: B
f: ordinal_carrier B -> A
isinjective_f: IsInjective f

{i : ordinal_carrier ↓b -> A & IsInjective i}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
b: B
f: ordinal_carrier B -> A
isinjective_f: IsInjective f

IsInjective (fun pat : {b0 : ordinal_carrier B & resize_hprop (b0 < b)} => f pat.1)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
b: B
f: ordinal_carrier B -> A
isinjective_f: IsInjective f
x: ordinal_carrier B
x_b: resize_hprop (x < b)
y: ordinal_carrier B
y_b: resize_hprop (y < b)
fx_fy: f x = f y

(x; x_b) = (y; y_b)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
b: B
f: ordinal_carrier B -> A
isinjective_f: IsInjective f
x: ordinal_carrier B
x_b: resize_hprop (x < b)
y: ordinal_carrier B
y_b: resize_hprop (y < b)
fx_fy: f x = f y

x = y
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
carrier:= {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}}: Type
relation:= fun B C : carrier => B.1 < C.1: carrier -> carrier -> Type
B: Ordinal
b: B
f: ordinal_carrier B -> A
isinjective_f: IsInjective f
x: ordinal_carrier B
x_b: resize_hprop (x < b)
y: ordinal_carrier B
y_b: resize_hprop (y < b)
fx_fy: f x = f y

f x = f y
exact fx_fy. Defined. Definition proper_subtype_inclusion (U V : 𝒫 A) := (forall a, U a -> V a) /\ merely (exists a : A, V a /\ ~(U a)). Infix "⊊" := proper_subtype_inclusion (at level 50) : Hartogs. Notation "(⊊)" := proper_subtype_inclusion : Hartogs. (* The hartogs number of [A] embeds into the threefold power set of [A]. This preliminary injection also increases the universe level though. *)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

{f : hartogs_number' -> (𝒫) ((𝒫) ((𝒫) A)) & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

{f : hartogs_number' -> (𝒫) ((𝒫) ((𝒫) A)) & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

forall X : (𝒫) ((𝒫) A), Lt X
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= ?Goal: forall X : (𝒫) ((𝒫) A), Lt X
{f : hartogs_number' -> (𝒫) ((𝒫) ((𝒫) A)) & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

forall X : (𝒫) ((𝒫) A), Lt X
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) A)

Lt X
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) A)
x1, x2: X

Type
exact (x1.1 ⊊ x2.1).
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X

{f : hartogs_number' -> (𝒫) ((𝒫) ((𝒫) A)) & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X

hartogs_number' -> (𝒫) ((𝒫) ((𝒫) A))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
IsInjective ?f
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X

hartogs_number' -> (𝒫) ((𝒫) ((𝒫) A))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B: Ordinal

(𝒫) ((𝒫) ((𝒫) A))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B: Ordinal
X: (𝒫) ((𝒫) A)

HProp
exact (merely (Isomorphism (X : Type; ϕ X) B)).
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X

IsInjective (fun X : hartogs_number' => (fun (B : Ordinal) (_ : card B ≤ card A) => (fun X0 : (𝒫) ((𝒫) A) => merely (Isomorphism (X0 : Type; ϕ X0) B)) : (𝒫) ((𝒫) ((𝒫) A))) X.1 X.2)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B: Ordinal
B_A: card B ≤ card A
C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))

(B; B_A) = (C; C_A)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B: Ordinal
B_A: card B ≤ card A
C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))

B = C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))

card B ≤ card A -> B = C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))

{i : Build_HSet B -> Build_HSet A & IsInjective i} -> B = C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f

B = C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f

Isomorphism B C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f

{X : (𝒫) ((𝒫) A) & Isomorphism (X; ϕ X) B}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) ((𝒫) A)
iso: Isomorphism (X; ϕ X) B
Isomorphism B C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f

{X : (𝒫) ((𝒫) A) & Isomorphism (X; ϕ X) B}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f

forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
{X : (𝒫) ((𝒫) A) & Isomorphism (X; ϕ X) B}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f

forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A

IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}

(b1; Hb1) = (b2; Hb2)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}

forall x : ordinal_carrier B, IsHProp (forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < x) * (a = f b'))%type})
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b1 = b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}

forall x : ordinal_carrier B, IsHProp (forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < x) * (a = f b'))%type})
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B

IsHProp (forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type})
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B

forall a : A, IsHProp ((fun a0 : A => X a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}) a)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B
a: A

IsHProp ((fun a : A => X a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}) a)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B
a: A

IsHProp (X a -> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type})
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B
a: A
IsHProp ({b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type} -> X a)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B
a: A

IsHProp (X a -> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type})
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B
a: A

IsHProp {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b: ordinal_carrier B
a: A

forall x y : ordinal_carrier B, (x < b) * (a = f x) -> (y < b) * (a = f y) -> x = y
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b, b1', b2': ordinal_carrier B
p: f b1' = f b2'

b1' = b2'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b, b1', b2': ordinal_carrier B
p: f b1' = f b2'

f b1' = f b2'
exact p.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}

b1 = b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}

forall c : ordinal_carrier B, c < b1 <-> c < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b': ordinal_carrier B

b' < b1 <-> b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b': ordinal_carrier B

b' < b1 -> b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b': ordinal_carrier B
b' < b2 -> b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b': ordinal_carrier B

b' < b1 -> b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b': ordinal_carrier B
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
Hb1: X (f b') <-> {b'0 : B & ((b'0 < b1) * (f b' = f b'0))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
Hb1: {b'0 : B & ((b'0 < b1) * (f b' = f b'0))%type} -> X (f b')
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
Hb1: X (f b')
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
b2: B
Hb1: {b'0 : B & ((b'0 < b2) * (f b' = f b'0))%type}
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
b2, proj1: B
H2: proj1 < b2
H3: f b' = f proj1
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
b2, proj1: B
H2: proj1 < b2
H3: b' = proj1
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
b2, proj1: B
H2: proj1 < b2
H3: f b' = f proj1
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1
IsInjective f
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
b2, proj1: B
H2: proj1 < b2
H3: b' = proj1
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
b': ordinal_carrier B
b2: B
H2: b' < b2
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b'_b1: b' < b1

b' < b2
exact H2.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b': ordinal_carrier B

b' < b2 -> b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
Hb2: forall a : A, X a <-> {b' : B & ((b' < b2) * (a = f b'))%type}
b': ordinal_carrier B
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
Hb2: X (f b') <-> {b'0 : B & ((b'0 < b2) * (f b' = f b'0))%type}
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
Hb2: {b'0 : B & ((b'0 < b2) * (f b' = f b'0))%type} -> X (f b')
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
Hb2: X (f b')
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
Hb2: {b'0 : B & ((b'0 < b1) * (f b' = f b'0))%type}
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
proj1: B
H2: proj1 < b1
H3: f b' = f proj1
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
proj1: B
H2: proj1 < b1
H3: b' = proj1
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
proj1: B
H2: proj1 < b1
H3: f b' = f proj1
b'_b2: b' < b2
IsInjective f
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
proj1: B
H2: proj1 < b1
H3: b' = proj1
b'_b2: b' < b2

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) A
b1: B
Hb1: forall a : A, X a <-> {b' : B & ((b' < b1) * (a = f b'))%type}
b2: B
b': ordinal_carrier B
H2: b' < b1
b'_b2: b' < b2

b' < b1
exact H2.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

{X : (𝒫) ((𝒫) A) & Isomorphism (X; ϕ X) B}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

Isomorphism (fun X : (𝒫) A => Build_HProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}; ϕ (fun X : (𝒫) A => Build_HProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}})) B
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

Isomorphism (fun X : (𝒫) A => Build_HProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}; ϕ (fun X : (𝒫) A => Build_HProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}})) B
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

Isomorphism ({x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}}; ϕ (fun X : (𝒫) A => Build_HProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}})) B
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

{x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}} <~> B.1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
forall (a : {x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}}) (a' : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}}), ϕ (fun X : (𝒫) A => Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) a a' <-> B.2 (?f a) (?f a')
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

{x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}} <~> B.1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

{x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}} -> B
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
B -> {x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
?f o ?g == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
?g o ?f == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

{x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}} -> B
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X: (𝒫) A
b: B

B
exact b.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

B -> {x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B

{x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A
b': B

Lt B
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A
IsHProp {b' : B & ((b' < b) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
Build_HProp {b0 : B & forall a : A, Build_HProp {b' : B & ((b' < b) * (a = f b'))%type} <-> {b' : B & ((b' < b0) * (a = f b'))%type}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A

IsHProp {b' : B & ((b' < b) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
Build_HProp {b0 : B & forall a : A, Build_HProp {b' : B & ((b' < b) * (a = f b'))%type} <-> {b' : B & ((b' < b0) * (a = f b'))%type}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A

IsHProp {b' : B & ((b' < b) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A

forall x y : {b' : B & ((b' < b) * (a = f b'))%type}, x = y
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A
b1: B
b1_b: b1 < b
p: a = f b1
b2: B
b2_b: b2 < b
q: a = f b2

(b1; (b1_b, p)) = (b2; (b2_b, q))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A
b1: B
b1_b: b1 < b
p: a = f b1
b2: B
b2_b: b2 < b
q: a = f b2

b1 = b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A
b1: B
b1_b: b1 < b
p: a = f b1
b2: B
b2_b: b2 < b
q: a = f b2

f b1 = f b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
a: Build_HSet A
b1: B
b1_b: b1 < b
b2: B
b2_b: b2 < b

a = a
reflexivity.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B

Build_HProp {b0 : B & forall a : A, Build_HProp {b' : B & ((b' < b) * (a = f b'))%type} <-> {b' : B & ((b' < b0) * (a = f b'))%type}}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B

forall a : A, Build_HProp {b' : B & ((b' < b) * (a = f b'))%type} <-> {b' : B & ((b' < b) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
b': A

Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
b: B
b': A

{b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type}
reflexivity.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

(fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}) => (fun (b : B) (_ : forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) o (fun b : B => (fun a : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

idmap == idmap
reflexivity.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

(fun b : B => (fun a : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) o (fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}) => (fun (b : B) (_ : forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

(fun x : {x : (𝒫) A & {b : ordinal_carrier B & forall a : A, x a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}}} => (fun a : A => Build_HProp {b' : ordinal_carrier B & ((b' < (x.2).1) * (a = f b'))%type}; (x.2).1; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < (x.2).1) * (b' = f b'0))%type})) == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X: (𝒫) A
b: ordinal_carrier B
Hb: forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}

(fun a : A => Build_HProp {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type}) = (X; b; Hb)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X: (𝒫) A
b: ordinal_carrier B
Hb: forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}

(fun a : A => Build_HProp {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type}).1 = (X; b; Hb).1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X: (𝒫) A
b: ordinal_carrier B
Hb: forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}

(fun a : A => Build_HProp {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}) = X
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X: (𝒫) A
b: ordinal_carrier B
Hb: forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}
a: A

Build_HProp {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type} = X a
apply path_iff_hprop; apply Hb.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

forall (a : {x : (𝒫) A & Build_HProp {b : B & forall a : A, x a <-> {b' : B & ((b' < b) * (a = f b'))%type}}}) (a' : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}}), ϕ (fun X : (𝒫) A => Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) a a' <-> B.2 (equiv_adjointify (fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : B) (_ : forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) (fun b : B => (fun a0 : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) ((fun x0 : ordinal_carrier B => 1%path) : (fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : B) (_ : forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) o (fun b : B => (fun a0 : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) == idmap) (((fun x : {x : (𝒫) A & {b : ordinal_carrier B & forall a0 : A, x a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : {b : ordinal_carrier B & forall a0 : A, X a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : ordinal_carrier B) (Hb : forall a0 : A, X a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}) => path_sigma_hprop (fun a0 : A => Build_HProp {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type}) (X; b; Hb) (path_forall (fun a0 : A => Build_HProp {b' : ordinal_carrier B & (... * ...)%type}) X ((fun a0 : A => path_iff_hprop (...) (...)) : (fun ... => Build_HProp ...) == X) : (fun a0 : A => Build_HProp {b' : ordinal_carrier B & (... * ...)%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & (... * ...)%type}).1 = (X; b; Hb).1)) proj2.1 proj2.2) x.1 x.2) : (fun x : {x : (𝒫) A & {b : ordinal_carrier B & forall a0 : A, x a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}} => (fun a0 : A => Build_HProp {b' : ordinal_carrier B & ((b' < (x.2).1) * (a0 = f b'))%type}; (x.2).1; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < (x.2).1) * (b' = f b'0))%type})) == idmap) : (fun b : B => (fun a0 : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) o (fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : B) (_ : forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) == idmap) a) (equiv_adjointify (fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : B) (_ : forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) (fun b : B => (fun a0 : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) ((fun x0 : ordinal_carrier B => 1%path) : (fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : B) (_ : forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) o (fun b : B => (fun a0 : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) == idmap) (((fun x : {x : (𝒫) A & {b : ordinal_carrier B & forall a0 : A, x a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : {b : ordinal_carrier B & forall a0 : A, X a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : ordinal_carrier B) (Hb : forall a0 : A, X a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}) => path_sigma_hprop (fun a0 : A => Build_HProp {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type}) (X; b; Hb) (path_forall (fun a0 : A => Build_HProp {b' : ordinal_carrier B & (... * ...)%type}) X ((fun a0 : A => path_iff_hprop (...) (...)) : (fun ... => Build_HProp ...) == X) : (fun a0 : A => Build_HProp {b' : ordinal_carrier B & (... * ...)%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & (... * ...)%type}).1 = (X; b; Hb).1)) proj2.1 proj2.2) x.1 x.2) : (fun x : {x : (𝒫) A & {b : ordinal_carrier B & forall a0 : A, x a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}} => (fun a0 : A => Build_HProp {b' : ordinal_carrier B & ((b' < (x.2).1) * (a0 = f b'))%type}; (x.2).1; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < (x.2).1) * (b' = f b'0))%type})) == idmap) : (fun b : B => (fun a0 : Build_HSet A => Build_HProp {b' : B & ((b' < b) * (a0 = f b'))%type}; b; fun b' : A => iff_reflexive {b'0 : ordinal_carrier B & ((b'0 < b) * (b' = f b'0))%type} : Build_HProp {b'0 : B & ((b'0 < b) * (b' = f b'0))%type} <-> {b'0 : B & ((b'0 < b) * (b' = f b'0))%type})) o (fun X0 : {x : (𝒫) A & Build_HProp {b : B & forall a0 : A, x a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}} => (fun (X : (𝒫) A) (proj2 : Build_HProp {b : B & forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}}) => (fun (b : B) (_ : forall a0 : A, X a0 <-> {b' : B & ((b' < b) * (a0 = f b'))%type}) => b) proj2.1 proj2.2) X0.1 X0.2) == idmap) a')
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}

forall (a : {x : (𝒫) A & {b : ordinal_carrier B & forall a : A, x a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}}}) (a' : {x : (𝒫) A & {b : ordinal_carrier B & forall a0 : A, x a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}}), ϕ (fun X : (𝒫) A => Build_HProp {b : ordinal_carrier B & forall a0 : A, X a0 <-> {b' : ordinal_carrier B & ((b' < b) * (a0 = f b'))%type}}) a a' <-> (a.2).1 < (a'.2).1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}

ϕ (fun X : (𝒫) A => Build_HProp {b : ordinal_carrier B & forall a : A, X a <-> {b' : ordinal_carrier B & ((b' < b) * (a = f b'))%type}}) (X1; b1; H'1) (X2; b2; H'2) <-> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}

(forall a : A, (X1; b1; H'1).1 a -> (X2; b2; H'2).1 a) * merely {a : A & ((X2; b2; H'2).1 a * ~ (X1; b1; H'1).1 a)%type} <-> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}

(forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & (X2 a * ~ X1 a)%type} <-> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}

(forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & (X2 a * ~ X1 a)%type} -> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1 < b2 -> ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}

(forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & (X2 a * ~ X1 a)%type} -> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type

b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type

(b1 < b2) + hor (b1 = b2) (b2 < b1) -> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b1_b2: b1 < b2

b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
H4: hor (b1 = b2) (b2 < b1)
b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b1_b2: b1 < b2

b1 < b2
exact b1_b2.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
H4: hor (b1 = b2) (b2 < b1)

b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type

hor (b1 = b2) (b2 < b1) -> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type

(b1 = b2) + (b2 < b1) -> b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b1_b2: b1 = b2

b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b2_b1: b2 < b1
b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b1_b2: b1 = b2

b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b1_b2: b1 = b2

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: Trunc (-1) {a : A & (X2 a * ~ X1 a)%type}
b1_b2: b1 = b2

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 = b2

Trunc (-1) {a : A & (X2 a * ~ X1 a)%type} -> Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 = b2

{a : A & (X2 a * ~ X1 a)%type} -> Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 = b2
a: A
X2a: X2 a
not_X1a: ~ X1 a

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 = b2
a: A
X2a: X2 a
not_X1a: ~ X1 a

X1 a
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 = b2
a: A
X2a: X2 a
not_X1a: ~ X1 a

{b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 = b2
a: A
X2a: X2 a
not_X1a: ~ X1 a

{b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 = b2
a: A
X2a: X2 a
not_X1a: ~ X1 a

X2 a
exact X2a.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b2_b1: b2 < b1

b1 < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
b2_b1: b2 < b1

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
H3: Trunc (-1) {a : A & (X2 a * ~ X1 a)%type}
b2_b1: b2 < b1

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1

Trunc (-1) {a : A & (X2 a * ~ X1 a)%type} -> Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1

{a : A & (X2 a * ~ X1 a)%type} -> Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
X2a: X2 a
not_X1a: ~ X1 a

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
X2a: X2 a
not_X1a: ~ X1 a

X1 a
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
X2a: X2 a
not_X1a: ~ X1 a

{b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
X2a: {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
not_X1a: ~ X1 a

{b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
b': ordinal_carrier B
b'_b2: b' < b2
a_fb': a = f b'
not_X1a: ~ X1 a

{b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
b': ordinal_carrier B
b'_b2: b' < b2
a_fb': a = f b'
not_X1a: ~ X1 a

((b' < b1) * (a = f b'))%type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
b': ordinal_carrier B
b'_b2: b' < b2
a_fb': a = f b'
not_X1a: ~ X1 a

b' < b1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
b': ordinal_carrier B
b'_b2: b' < b2
a_fb': a = f b'
not_X1a: ~ X1 a
a = f b'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
b': ordinal_carrier B
b'_b2: b' < b2
a_fb': a = f b'
not_X1a: ~ X1 a

b' < b1
transitivity b2; assumption.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b2_b1: b2 < b1
a: A
b': ordinal_carrier B
b'_b2: b' < b2
a_fb': a = f b'
not_X1a: ~ X1 a

a = f b'
assumption.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}

b1 < b2 -> ((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

((forall a : A, X1 a -> X2 a) * Trunc (-1) {a : A & X2 a * ~ X1 a})%type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

forall a : A, X1 a -> X2 a
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
Trunc (-1) {a : A & (X2 a * ~ X1 a)%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

forall a : A, X1 a -> X2 a
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
X1a: X1 a

X2 a
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
X1a: X1 a

{b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
X1a: {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}

{b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
b': ordinal_carrier B
b'_b1: b' < b1
a_fb': a = f b'

{b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
b': ordinal_carrier B
b'_b1: b' < b1
a_fb': a = f b'

((b' < b2) * (a = f b'))%type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
b': ordinal_carrier B
b'_b1: b' < b1
a_fb': a = f b'

b' < b2
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
b': ordinal_carrier B
b'_b1: b' < b1
a_fb': a = f b'
a = f b'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
b': ordinal_carrier B
b'_b1: b' < b1
a_fb': a = f b'

b' < b2
transitivity b1; assumption.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
a: A
b': ordinal_carrier B
b'_b1: b' < b1
a_fb': a = f b'

a = f b'
assumption.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

Trunc (-1) {a : A & (X2 a * ~ X1 a)%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

{a : A & (X2 a * ~ X1 a)%type}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

(X2 (f b1) * ~ X1 (f b1))%type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

X2 (f b1)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
~ X1 (f b1)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

X2 (f b1)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

{b' : ordinal_carrier B & ((b' < b2) * (f b1 = f b'))%type}
exists b1; auto.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2

~ X1 (f b1)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
X1_fb1: X1 (f b1)

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
X1_fb1: {b' : ordinal_carrier B & ((b' < b1) * (f b1 = f b'))%type}

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
b': ordinal_carrier B
b'_b1: b' < b1
fb1_fb': f b1 = f b'

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
b': ordinal_carrier B
b'_b1: b' < b1
fb1_fb': b1 = b'

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
b'_b1: b1 < b1

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
b'_b1: Empty

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
b'_b1: b1 < b1
Irreflexive lt
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
H2: forall X : (𝒫) A, IsHProp {b : B & forall a : A, X a <-> {b' : B & ((b' < b) * (a = f b'))%type}}
X1: (𝒫) A
b1: ordinal_carrier B
H'1: forall a : A, X1 a <-> {b' : ordinal_carrier B & ((b' < b1) * (a = f b'))%type}
X2: (𝒫) A
b2: ordinal_carrier B
H'2: forall a : A, X2 a <-> {b' : ordinal_carrier B & ((b' < b2) * (a = f b'))%type}
b1_b2: b1 < b2
b'_b1: Empty

Empty
assumption. }
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) ((𝒫) A)
iso: Isomorphism (X; ϕ X) B

Isomorphism B C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) ((𝒫) A)
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism B C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) == (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C))
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
X: (𝒫) ((𝒫) A)
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism B C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) B)) X = (fun X : (𝒫) ((𝒫) A) => merely (Isomorphism (X; ϕ X) C)) X
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism B C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism B C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism B (X; ϕ X)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)
Isomorphism (X; ϕ X) C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism B (X; ϕ X)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism (X; ϕ X) B
assumption.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism (X; ϕ X) C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)
X1: merely (Isomorphism (X : Type; ϕ X) C)

Isomorphism (X; ϕ X) C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)
merely (Isomorphism (X; ϕ X) C)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)
X1: merely (Isomorphism (X : Type; ϕ X) C)

Isomorphism (X; ϕ X) C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

merely (Isomorphism (X : Type; ϕ X) C) -> Isomorphism (X; ϕ X) C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

IsHProp (Isomorphism (X; ϕ X) C)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)
Isomorphism (X; ϕ X) C -> Isomorphism (X; ϕ X) C
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

IsHProp (Isomorphism (X; ϕ X) C)
exact (ishprop_Isomorphism (Build_Ordinal X (ϕ X) _) C).
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism (X; ϕ X) C -> Isomorphism (X; ϕ X) C
auto.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

merely (Isomorphism (X; ϕ X) C)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

merely (Isomorphism (X; ϕ X) B)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
ϕ:= fun X : (𝒫) ((𝒫) A) => (fun x1 x2 : X => (⊊) x1.1 x2.1) : Lt X: forall X : (𝒫) ((𝒫) A), Lt X
B, C: Ordinal
C_A: card C ≤ card A
X: (𝒫) ((𝒫) A)
H0: merely (Isomorphism (X; ϕ X) B) = merely (Isomorphism (X; ϕ X) C)
f: Build_HSet B -> Build_HSet A
injective_f: IsInjective f
iso: Isomorphism (X; ϕ X) B
X0: IsOrdinal X (ϕ X)

Isomorphism (X; ϕ X) B
exact iso. Qed. (** Using hprop resizing, the threefold power set can be pushed to the same universe level as [A]. *)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))

(𝒫) ((𝒫) ((𝒫) A)) : Type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))

(𝒫) ((𝒫) ((𝒫) A)) : Type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

(𝒫) ((𝒫) ((𝒫) A)) -> (𝒫) ((𝒫) ((𝒫) A)) : Type
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

(𝒫) ((𝒫) A) -> (𝒫) ((𝒫) A)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

(𝒫) A -> (𝒫) A
nrapply power_inj. Defined.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

IsInjective uni_fix
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

IsInjective uni_fix
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X, Y: (𝒫) ((𝒫) ((𝒫) A))

uni_fix X = uni_fix Y -> X = Y
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X, Y: (𝒫) ((𝒫) ((𝒫) A))

power_morph (power_morph power_inj) X = power_morph (power_morph power_inj) Y -> X = Y
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X, Y: (𝒫) ((𝒫) ((𝒫) A))
H: power_morph (power_morph power_inj) X = power_morph (power_morph power_inj) Y

IsInjective (power_morph power_inj)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X, Y: (𝒫) ((𝒫) ((𝒫) A))
H: power_morph (power_morph power_inj) X = power_morph (power_morph power_inj) Y
P, Q: (𝒫) ((𝒫) A)

power_morph power_inj P = power_morph power_inj Q -> P = Q
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X, Y: (𝒫) ((𝒫) ((𝒫) A))
H: power_morph (power_morph power_inj) X = power_morph (power_morph power_inj) Y
P, Q: (𝒫) ((𝒫) A)
H': power_morph power_inj P = power_morph power_inj Q

IsInjective power_inj
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X, Y: (𝒫) ((𝒫) ((𝒫) A))
H: power_morph (power_morph power_inj) X = power_morph (power_morph power_inj) Y
P, Q: (𝒫) ((𝒫) A)
H': power_morph power_inj P = power_morph power_inj Q
p, q: (𝒫) A

power_inj p = power_inj q -> p = q
apply injective_power_inj. Qed. (* We can therefore resize the Hartogs number of A to the same universe level as A. *) Definition hartogs_number_carrier : Type@{A} := {X : 𝒫 (𝒫 (𝒫 A)) | resize_hprop (merely (exists a, uni_fix (hartogs_number'_injection.1 a) = X))}.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

hartogs_number_carrier <~> hartogs_number'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

hartogs_number_carrier <~> hartogs_number'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

hartogs_number' <~> hartogs_number_carrier
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

hartogs_number' -> hartogs_number_carrier
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
IsEquiv ?equiv_fun
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

hartogs_number' -> hartogs_number_carrier
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'

hartogs_number_carrier
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'

resize_hprop (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)})
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'

{a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'

uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 a)
reflexivity.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

IsEquiv (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

IsConnMap (Tr (-1)) (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
IsEmbedding (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

IsConnMap (Tr (-1)) (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

forall b : hartogs_number_carrier, merely (hfiber (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)))) b)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))
HX: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X})

merely (hfiber (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)))) (X; HX))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))
HX: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X})

merely ?A
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))
HX: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X})
?A -> merely (hfiber (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)))) (X; HX))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))
HX: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X})

merely ?A
eapply equiv_resize_hprop, HX.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))
HX: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X})

{a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X} -> merely (hfiber (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)))) (X; HX))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'
HX: resize_hprop (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)})

merely (hfiber (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)))) (uni_fix (hartogs_number'_injection.1 a); HX))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'
HX: resize_hprop (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)})

Trunc (-1) (hfiber (fun a : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} => (uni_fix (hartogs_number'_injection.1 a); equiv_resize_hprop (Trunc (-1) {a0 : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)))) (uni_fix (hartogs_number'_injection.1 a); HX))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'
HX: resize_hprop (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)})

hfiber (fun a : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} => (uni_fix (hartogs_number'_injection.1 a); equiv_resize_hprop (Trunc (-1) {a0 : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)))) (uni_fix (hartogs_number'_injection.1 a); HX)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'
HX: resize_hprop (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)})

(uni_fix (hartogs_number'_injection.1 a); equiv_resize_hprop (Trunc (-1) {a0 : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))) = (uni_fix (hartogs_number'_injection.1 a); HX)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'
HX: resize_hprop (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)})

(uni_fix (hartogs_number'_injection.1 a); equiv_resize_hprop (Trunc (-1) {a0 : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))) = (uni_fix (hartogs_number'_injection.1 a); HX)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a: hartogs_number'
HX: resize_hprop (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)})

equiv_resize_hprop (Trunc (-1) {a0 : {B : Ordinal & Trunc (-1) {i : ordinal_carrier B -> A & IsInjective i}} & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path)) = HX
apply path_ishprop.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

IsEmbedding (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

isinj (fun a : hartogs_number' => (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))))
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a, b: hartogs_number'

(uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))) = (uni_fix (hartogs_number'_injection.1 b); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b)}) (istrunc_truncation (-1) {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b)}) (tr (b; 1%path))) -> a = b
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a, b: hartogs_number'
H: (uni_fix (hartogs_number'_injection.1 a); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (istrunc_truncation (-1) {a0 : hartogs_number' & uni_fix (hartogs_number'_injection.1 a0) = uni_fix (hartogs_number'_injection.1 a)}) (tr (a; 1%path))).1 = (uni_fix (hartogs_number'_injection.1 b); let X := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b)}) (istrunc_truncation (-1) {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b)}) (tr (b; 1%path))).1

a = b
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a, b: hartogs_number'
H: uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b)

a = b
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a, b: hartogs_number'
H: uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b)

(uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b) -> hartogs_number'_injection.1 a = hartogs_number'_injection.1 b) -> a = b
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a, b: hartogs_number'
H: uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b)
H': uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b) -> hartogs_number'_injection.1 a = hartogs_number'_injection.1 b

a = b
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
a, b: hartogs_number'
H: hartogs_number'_injection.1 a = hartogs_number'_injection.1 b
H': uni_fix (hartogs_number'_injection.1 a) = uni_fix (hartogs_number'_injection.1 b) -> hartogs_number'_injection.1 a = hartogs_number'_injection.1 b

a = b
now apply hartogs_number'_injection.2. Qed. Definition hartogs_number : Ordinal@{A _} := resize_ordinal hartogs_number' hartogs_number_carrier hartogs_equiv. (* This final definition now satisfies the expected cardinality properties. *)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

{f : hartogs_number -> (𝒫) ((𝒫) ((𝒫) A)) & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

{f : hartogs_number -> (𝒫) ((𝒫) ((𝒫) A)) & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

{f : hartogs_number_carrier -> (𝒫) ((𝒫) ((𝒫) A)) & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

IsInjective pr1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))
HX: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X})
Y: (𝒫) ((𝒫) ((𝒫) A))
HY: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = Y})

(X; HX).1 = (Y; HY).1 -> (X; HX) = (Y; HY)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
X: (𝒫) ((𝒫) ((𝒫) A))
HX: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = X})
Y: (𝒫) ((𝒫) ((𝒫) A))
HY: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = Y})

X = Y -> (X; HX) = (Y; HY)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
Y: (𝒫) ((𝒫) ((𝒫) A))
HX, HY: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = Y})

(Y; HX) = (Y; HY)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
Y: (𝒫) ((𝒫) ((𝒫) A))
HX, HY: resize_hprop (merely {a : hartogs_number' & uni_fix (hartogs_number'_injection.1 a) = Y})

HX = HY
apply path_ishprop. Qed.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

~ {f : hartogs_number -> A & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

~ {f : hartogs_number -> A & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet

~ {f : hartogs_number_carrier -> A & IsInjective f}
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f

card hartogs_number ≤ card A
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f

card hartogs_number ≤ card A
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f

{i : Build_HSet hartogs_number -> Build_HSet A & IsInjective i}
now exists f.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A

hartogs_number'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= ?Goal: hartogs_number'
Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A

hartogs_number'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A

card hartogs_number ≤ card A
apply HN.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'

Empty
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'

Isomorphism hartogs_number' ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'

Isomorphism hartogs_number' hartogs_number
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
Isomorphism hartogs_number ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'

Isomorphism hartogs_number' hartogs_number
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'

Isomorphism hartogs_number hartogs_number'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'

Isomorphism (resize_ordinal hartogs_number' hartogs_number_carrier hartogs_equiv) hartogs_number'
exact (resize_ordinal_iso hartogs_number' hartogs_number_carrier hartogs_equiv).
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'

Isomorphism hartogs_number ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

Isomorphism hartogs_number ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

Isomorphism hartogs_number ?B
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
Isomorphism ?B ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

Isomorphism ↓hartogs_number ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

(↓hartogs_number).1 <~> (↓HNO).1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
forall a a' : (↓hartogs_number).1, (↓hartogs_number).2 a a' <-> (↓HNO).2 (?f a) (?f a')
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

(↓hartogs_number).1 <~> (↓HNO).1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

↓hartogs_number -> ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
↓HNO -> ↓hartogs_number
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
?f o ?g == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
?g o ?f == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

↓hartogs_number -> ↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

↓HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

hartogs_number'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number
resize_hprop (?b < HNO)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

hartogs_number'
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

card a ≤ card A
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

card a ≤ card hartogs_number
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number
card hartogs_number ≤ card A
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

card a ≤ card hartogs_number
nrapply le_Cardinal_lt_Ordinal; apply Ha.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

card hartogs_number ≤ card A
apply HN.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

resize_hprop ((a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha) HN) < HNO)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

(a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha) HN) < HNO
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: a < hartogs_number

a < hartogs_number
exact Ha.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

↓HNO -> ↓hartogs_number
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: card a ≤ card A
H: (a; Ha) < HNO

↓hartogs_number
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: card a ≤ card A
H: (a; Ha) < HNO

resize_hprop (a < hartogs_number)
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: Ordinal
Ha: card a ≤ card A
H: (a; Ha) < HNO

a < hartogs_number
apply H.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

(fun X0 : ↓hartogs_number => (fun (a : Ordinal) (Ha : resize_hprop (a < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a < hartogs_number) (ordinal_relation_is_mere a hartogs_number) Ha in ((a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN) HNO) (Ha0 : (a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) o (fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a : Ordinal) (Ha : card a ≤ card A) (H : resize_hprop ((a; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a; Ha) < HNO) (ordinal_relation_is_mere (a; Ha) HNO) H in (a; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a < hartogs_number) (ordinal_relation_is_mere a hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: ↓HNO

(let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X1 ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 < hartogs_number) (ordinal_relation_is_mere (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN); let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN) HNO) Ha)) = a
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: ↓HNO

(let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X1 ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 < hartogs_number) (ordinal_relation_is_mere (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN); let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN) HNO) Ha)).1 = a.1
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: ↓HNO

((let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X1 ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 < hartogs_number) (ordinal_relation_is_mere (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN); let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1; transitive_card (card (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X4 (((a.1).1; (a.1).2) < HNO) (ordinal_relation_is_mere ((a.1).1; (a.1).2) HNO) a.2 in ((a.1).1; let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1).1 < hartogs_number) (ordinal_relation_is_mere (a.1).1 hartogs_number) H)).1 hartogs_number Ha) HN) HNO) Ha)).1).1 = (a.1).1
reflexivity.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

(fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a : Ordinal) (Ha : card a ≤ card A) (H : resize_hprop ((a; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a; Ha) < HNO) (ordinal_relation_is_mere (a; Ha) HNO) H in (a; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a < hartogs_number) (ordinal_relation_is_mere a hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) o (fun X0 : ↓hartogs_number => (fun (a : Ordinal) (Ha : resize_hprop (a < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a < hartogs_number) (ordinal_relation_is_mere a hartogs_number) Ha in ((a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN) HNO) (Ha0 : (a; transitive_card (card a) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) == idmap
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: ↓hartogs_number

(let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X1 ((((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).2) < HNO) (ordinal_relation_is_mere (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).2) HNO) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1; let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X4 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1 < hartogs_number) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X4 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1 hartogs_number) H)) = a
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number
a: ↓hartogs_number

(let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X1 ((((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).2) < HNO) (ordinal_relation_is_mere (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).2) HNO) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1; let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X4 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1 < hartogs_number) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X4 (a.1 < hartogs_number) (ordinal_relation_is_mere a.1 hartogs_number) a.2 in ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN); let X5 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X5 ((a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere (a.1; transitive_card (card a.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a.1 hartogs_number Ha) HN) HNO) Ha)).1).1 hartogs_number) H)).1 = a.1
reflexivity.
univalence: Univalence
prop_resizing: PropResizing
lem: ExcludedMiddle
A: HSet
f: hartogs_number_carrier -> A
Hf: IsInjective f
HN: card hartogs_number ≤ card A
HNO:= (hartogs_number; HN): hartogs_number'
X: Isomorphism hartogs_number ↓hartogs_number

forall a a' : (↓hartogs_number).1, (↓hartogs_number).2 a a' <-> (↓HNO).2 (equiv_adjointify (fun X0 : ↓hartogs_number => (fun (a0 : Ordinal) (Ha : resize_hprop (a0 < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) Ha in ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) HNO) (Ha0 : (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) (fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a0 : Ordinal) (Ha : card a0 ≤ card A) (H : resize_hprop ((a0; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a0; Ha) < HNO) (ordinal_relation_is_mere (a0; Ha) HNO) H in (a0; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) ((fun a0 : ↓HNO => path_sigma_hprop (let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X1 ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).1 < hartogs_number) (ordinal_relation_is_mere (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).1 hartogs_number) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a0.1).1; (a0.1).2) < HNO) (ordinal_relation_is_mere ((a0.1).1; (a0.1).2) HNO) a0.2 in ((a0.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1).1 < hartogs_number) (ordinal_relation_is_mere (a0.1).1 hartogs_number) H)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a0.1).1; (a0.1).2) < HNO) (ordinal_relation_is_mere ((a0.1).1; (a0.1).2) HNO) a0.2 in ((a0.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1).1 < hartogs_number) (ordinal_relation_is_mere (a0.1).1 hartogs_number) H)).1; transitive_card (card (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (... < HNO) (ordinal_relation_is_mere ... HNO) a0.2 in ((a0.1).1; let X4 := ... => ... in X4 (...) (...) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (... < HNO) (ordinal_relation_is_mere ... HNO) a0.2 in ((a0.1).1; let X4 := ... => ... in X4 (...) (...) H)).1 hartogs_number Ha) HN); let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X4 (...) (...) a0.2 in ((a0.1).1; let X5 := ... in X5 ... ... H)).1; transitive_card (card (let X3 := ... => ... in let X4 := ... in ... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := ... => ... in let X4 := ... in ... ...).1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X4 (...) (...) a0.2 in ((a0.1).1; let X5 := ... in X5 ... ... H)).1; transitive_card (card (let X3 := ... => ... in let X4 := ... in ... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := ... => ... in let X4 := ... in ... ...).1 hartogs_number Ha) HN) HNO) Ha)) a0 (path_sigma_hprop (let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X1 ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X3 (...) (...) a0.2 in ((a0.1).1; let X4 := ... in X4 ... ... H)).1 < hartogs_number) (ordinal_relation_is_mere (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X3 (...) (...) a0.2 in ((a0.1).1; let X4 := ... in X4 ... ... H)).1 hartogs_number) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).1; transitive_card (card (let X2 := fun (A : Type) (IsHProp0 : ...) => equiv_isequiv (...) in let X3 := fun ... ... => (...)^-1 in let H := X3 ... ... a0.2 in ((a0.1).1; ... ...)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X2 := fun (A : Type) (IsHProp0 : ...) => equiv_isequiv (...) in let X3 := fun ... ... => (...)^-1 in let H := X3 ... ... a0.2 in ((a0.1).1; ... ...)).1 hartogs_number Ha) HN); let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun ... ... => equiv_isequiv ... in let X4 := ... => ...^-1 in let H := ... in (....1; ...)).1; transitive_card (card (... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (... ...).1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere ((let X3 := fun ... ... => equiv_isequiv ... in let X4 := ... => ...^-1 in let H := ... in (....1; ...)).1; transitive_card (card (... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (... ...).1 hartogs_number Ha) HN) HNO) Ha)).1 a0.1 1)) : (fun X0 : ↓hartogs_number => (fun (a0 : Ordinal) (Ha : resize_hprop (a0 < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) Ha in ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) HNO) (Ha0 : (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) o (fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a0 : Ordinal) (Ha : card a0 ≤ card A) (H : resize_hprop ((a0; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a0; Ha) < HNO) (ordinal_relation_is_mere (a0; Ha) HNO) H in (a0; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) == idmap) ((fun a0 : ↓hartogs_number => path_sigma_hprop (let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X1 ((((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).2) < HNO) (ordinal_relation_is_mere (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).2) HNO) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a0.1 < hartogs_number) (ordinal_relation_is_mere a0.1 hartogs_number) a0.2 in ((a0.1; transitive_card (card a0.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1; transitive_card ... ... ... ... HN) < HNO) (ordinal_relation_is_mere (a0.1; transitive_card ... ... ... ... HN) HNO) Ha)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a0.1 < hartogs_number) (ordinal_relation_is_mere a0.1 hartogs_number) a0.2 in ((a0.1; transitive_card (card a0.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1; transitive_card ... ... ... ... HN) < HNO) (ordinal_relation_is_mere (a0.1; transitive_card ... ... ... ... HN) HNO) Ha)).1).1; let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X4 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X5 := ... in X5 ... ... Ha)).1).1 < hartogs_number) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X4 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X5 := ... in X5 ... ... Ha)).1).1 hartogs_number) H)) a0 1) : (fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a0 : Ordinal) (Ha : card a0 ≤ card A) (H : resize_hprop ((a0; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a0; Ha) < HNO) (ordinal_relation_is_mere (a0; Ha) HNO) H in (a0; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) o (fun X0 : ↓hartogs_number => (fun (a0 : Ordinal) (Ha : resize_hprop (a0 < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) Ha in ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) HNO) (Ha0 : (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) == idmap) a) (equiv_adjointify (fun X0 : ↓hartogs_number => (fun (a0 : Ordinal) (Ha : resize_hprop (a0 < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) Ha in ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) HNO) (Ha0 : (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) (fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a0 : Ordinal) (Ha : card a0 ≤ card A) (H : resize_hprop ((a0; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a0; Ha) < HNO) (ordinal_relation_is_mere (a0; Ha) HNO) H in (a0; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) ((fun a0 : ↓HNO => path_sigma_hprop (let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X1 ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).1 < hartogs_number) (ordinal_relation_is_mere (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).1 hartogs_number) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a0.1).1; (a0.1).2) < HNO) (ordinal_relation_is_mere ((a0.1).1; (a0.1).2) HNO) a0.2 in ((a0.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1).1 < hartogs_number) (ordinal_relation_is_mere (a0.1).1 hartogs_number) H)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (((a0.1).1; (a0.1).2) < HNO) (ordinal_relation_is_mere ((a0.1).1; (a0.1).2) HNO) a0.2 in ((a0.1).1; let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1).1 < hartogs_number) (ordinal_relation_is_mere (a0.1).1 hartogs_number) H)).1; transitive_card (card (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (... < HNO) (ordinal_relation_is_mere ... HNO) a0.2 in ((a0.1).1; let X4 := ... => ... in X4 (...) (...) H)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 (... < HNO) (ordinal_relation_is_mere ... HNO) a0.2 in ((a0.1).1; let X4 := ... => ... in X4 (...) (...) H)).1 hartogs_number Ha) HN); let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X4 (...) (...) a0.2 in ((a0.1).1; let X5 := ... in X5 ... ... H)).1; transitive_card (card (let X3 := ... => ... in let X4 := ... in ... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := ... => ... in let X4 := ... in ... ...).1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X4 (...) (...) a0.2 in ((a0.1).1; let X5 := ... in X5 ... ... H)).1; transitive_card (card (let X3 := ... => ... in let X4 := ... in ... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X3 := ... => ... in let X4 := ... in ... ...).1 hartogs_number Ha) HN) HNO) Ha)) a0 (path_sigma_hprop (let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X1 ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X3 (...) (...) a0.2 in ((a0.1).1; let X4 := ... in X4 ... ... H)).1 < hartogs_number) (ordinal_relation_is_mere (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let H := X3 (...) (...) a0.2 in ((a0.1).1; let X4 := ... in X4 ... ... H)).1 hartogs_number) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X3 ((....1; ....2) < HNO) (ordinal_relation_is_mere (....1; ....2) HNO) a0.2 in ((a0.1).1; let X4 := fun ... ... => equiv_fun ... in X4 (....1 < hartogs_number) (ordinal_relation_is_mere ....1 hartogs_number) H)).1; transitive_card (card (let X2 := fun (A : Type) (IsHProp0 : ...) => equiv_isequiv (...) in let X3 := fun ... ... => (...)^-1 in let H := X3 ... ... a0.2 in ((a0.1).1; ... ...)).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (let X2 := fun (A : Type) (IsHProp0 : ...) => equiv_isequiv (...) in let X3 := fun ... ... => (...)^-1 in let H := X3 ... ... a0.2 in ((a0.1).1; ... ...)).1 hartogs_number Ha) HN); let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun ... ... => equiv_isequiv ... in let X4 := ... => ...^-1 in let H := ... in (....1; ...)).1; transitive_card (card (... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (... ...).1 hartogs_number Ha) HN) < HNO) (ordinal_relation_is_mere ((let X3 := fun ... ... => equiv_isequiv ... in let X4 := ... => ...^-1 in let H := ... in (....1; ...)).1; transitive_card (card (... ...).1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal (... ...).1 hartogs_number Ha) HN) HNO) Ha)).1 a0.1 1)) : (fun X0 : ↓hartogs_number => (fun (a0 : Ordinal) (Ha : resize_hprop (a0 < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) Ha in ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) HNO) (Ha0 : (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) o (fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a0 : Ordinal) (Ha : card a0 ≤ card A) (H : resize_hprop ((a0; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a0; Ha) < HNO) (ordinal_relation_is_mere (a0; Ha) HNO) H in (a0; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) == idmap) ((fun a0 : ↓hartogs_number => path_sigma_hprop (let X0 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H := X1 ((((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).2) < HNO) (ordinal_relation_is_mere (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).1; ((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X3 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X4 := ... in X4 ... ... Ha)).1).2) HNO) (let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a0.1 < hartogs_number) (ordinal_relation_is_mere a0.1 hartogs_number) a0.2 in ((a0.1; transitive_card (card a0.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1; transitive_card ... ... ... ... HN) < HNO) (ordinal_relation_is_mere (a0.1; transitive_card ... ... ... ... HN) HNO) Ha)).2 in (((let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha := X3 (a0.1 < hartogs_number) (ordinal_relation_is_mere a0.1 hartogs_number) a0.2 in ((a0.1; transitive_card (card a0.1) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0.1 hartogs_number Ha) HN); let X4 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X4 ((a0.1; transitive_card ... ... ... ... HN) < HNO) (ordinal_relation_is_mere (a0.1; transitive_card ... ... ... ... HN) HNO) Ha)).1).1; let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X2 (((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X4 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X5 := ... in X5 ... ... Ha)).1).1 < hartogs_number) (ordinal_relation_is_mere ((let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X4 := fun (A : Type) (IsHProp0 : ...) => (equiv_resize_hprop A)^-1 in let Ha := X4 (...) (...) a0.2 in ((a0.1; transitive_card ... ... ... ... HN); let X5 := ... in X5 ... ... Ha)).1).1 hartogs_number) H)) a0 1) : (fun X0 : ↓HNO => (fun proj1 : hartogs_number' => (fun (a0 : Ordinal) (Ha : card a0 ≤ card A) (H : resize_hprop ((a0; Ha) < HNO)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let H0 := X2 ((a0; Ha) < HNO) (ordinal_relation_is_mere (a0; Ha) HNO) H in (a0; let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) H0)) proj1.1 proj1.2) X0.1 X0.2) o (fun X0 : ↓hartogs_number => (fun (a0 : Ordinal) (Ha : resize_hprop (a0 < hartogs_number)) => let X1 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_isequiv (equiv_resize_hprop A) in let X2 := fun (A : Type) (IsHProp0 : IsHProp A) => (equiv_resize_hprop A)^-1 in let Ha0 := X2 (a0 < hartogs_number) (ordinal_relation_is_mere a0 hartogs_number) Ha in ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN); let X3 := fun (A : Type) (IsHProp0 : IsHProp A) => equiv_fun (equiv_resize_hprop A) in X3 ((a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO) (ordinal_relation_is_mere (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) HNO) (Ha0 : (a0; transitive_card (card a0) (card hartogs_number) (card A) (le_Cardinal_lt_Ordinal a0 hartogs_number Ha0) HN) < HNO))) X0.1 X0.2) == idmap) a')
reflexivity. Defined. End Hartogs_Number.