Beginning of Section SurOctonions
L15
Axiom. (octonion_tag_fresh) We take the following as an axiom:
∀x, HSNo x → ∀u ∈ x, {4} ∉ u
L16
Definition. We define HSNo_pair to be pair_tag {4} of type set → set → set.
L17
Axiom. (HSNo_pair_0) We take the following as an axiom:
∀x, HSNo_pair x 0 = x
L18
Axiom. (HSNo_pair_prop_1) We take the following as an axiom:
∀x1 y1 x2 y2, HSNo x1 → HSNo x2 → HSNo_pair x1 y1 = HSNo_pair x2 y2 → x1 = x2
L19
Axiom. (HSNo_pair_prop_2) We take the following as an axiom:
∀x1 y1 x2 y2, HSNo x1 → HSNo y1 → HSNo x2 → HSNo y2 → HSNo_pair x1 y1 = HSNo_pair x2 y2 → y1 = y2
L20
Definition. We define OSNo to be CD_carr {4} HSNo of type set → prop.
L21
Axiom. (OSNo_I) We take the following as an axiom:
∀x y, HSNo x → HSNo y → OSNo (HSNo_pair x y)
L22
Axiom. (OSNo_E) We take the following as an axiom:
∀z, OSNo z → ∀p : set → prop, (∀x y, HSNo x → HSNo y → z = HSNo_pair x y → p (HSNo_pair x y)) → p z
L23
Axiom. (HSNo_OSNo) We take the following as an axiom:
∀x, HSNo x → OSNo x
L24
Axiom. (OSNo_0) We take the following as an axiom:
L25
Axiom. (OSNo_1) We take the following as an axiom:
L26
Let ctag : set → set ≝ λalpha ⇒ SetAdjoin alpha {4}
Notation. We use '' as a postfix operator with priority 100 corresponding to applying term ctag.
L28
Axiom. (OSNo_ExtendedSNoElt_5) We take the following as an axiom:
∀z, OSNo z → ExtendedSNoElt_ 5 z
Notation. We use - as a prefix operator with priority 358 corresponding to applying term minus_HSNo.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_HSNo.
Notation. We use * as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_HSNo.
Notation. We use :/: as an infix operator with priority 353 and no associativity corresponding to applying term div_HSNo.
Notation. We use ' as a postfix operator with priority 100 corresponding to applying term conj_HSNo.
L34
Let i ≝ Complex_i
L35
Let j ≝ Quaternion_j
L36
Let k ≝ Quaternion_k
L37
Definition. We define OSNo_proj0 to be CD_proj0 {4} HSNo of type set → set.
L38
Definition. We define OSNo_proj1 to be CD_proj1 {4} HSNo of type set → set.
L39
Let p0 : set → set ≝ OSNo_proj0
L40
Let p1 : set → set ≝ OSNo_proj1
L41
Let pa : set → set → set ≝ HSNo_pair
L42
Axiom. (OSNo_proj0_1) We take the following as an axiom:
∀z, OSNo z → HSNo (p0 z) ∧ ∃y, HSNo y ∧ z = pa (p0 z) y
L43
Axiom. (OSNo_proj0_2) We take the following as an axiom:
∀x y, HSNo x → HSNo y → p0 (pa x y) = x
L44
Axiom. (OSNo_proj1_1) We take the following as an axiom:
∀z, OSNo z → HSNo (p1 z) ∧ z = pa (p0 z) (p1 z)
L45
Axiom. (OSNo_proj1_2) We take the following as an axiom:
∀x y, HSNo x → HSNo y → p1 (pa x y) = y
L46
Axiom. (OSNo_proj0R) We take the following as an axiom:
∀z, OSNo z → HSNo (p0 z)
L47
Axiom. (OSNo_proj1R) We take the following as an axiom:
∀z, OSNo z → HSNo (p1 z)
L48
Axiom. (OSNo_proj0p1) We take the following as an axiom:
∀z, OSNo z → z = pa (p0 z) (p1 z)
L49
Axiom. (OSNo_proj0proj1_split) We take the following as an axiom:
∀z w, OSNo z → OSNo w → p0 z = p0 w → p1 z = p1 w → z = w
L50
Definition. We define OSNoLev to be λz ⇒ HSNoLev (p0 z) ∪ HSNoLev (p1 z) of type set → set.
L51
Axiom. (OSNoLev_ordinal) We take the following as an axiom:
∀z, OSNo z → ordinal (OSNoLev z)
L52
Definition. We define minus_OSNo to be CD_minus {4} HSNo minus_HSNo of type set → set.
L53
Definition. We define conj_OSNo to be CD_conj {4} HSNo minus_HSNo conj_HSNo of type set → set.
L54
Definition. We define add_OSNo to be CD_add {4} HSNo add_HSNo of type set → set → set.
L55
Definition. We define mul_OSNo to be CD_mul {4} HSNo minus_HSNo conj_HSNo add_HSNo mul_HSNo of type set → set → set.
L56
Definition. We define exp_OSNo_nat to be CD_exp_nat {4} HSNo minus_HSNo conj_HSNo add_HSNo mul_HSNo of type set → set → set.
L57
Let plus' ≝ add_OSNo
L58
Let mult' ≝ mul_OSNo
Notation. We use :-: as a prefix operator with priority 358 corresponding to applying term minus_OSNo.
Notation. We use '' as a postfix operator with priority 100 corresponding to applying term conj_OSNo.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_OSNo.
Notation. We use ⨯ as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_OSNo.
Notation. We use :^: as an infix operator with priority 355 and which associates to the right corresponding to applying term exp_OSNo_nat.
L64
Axiom. (OSNo_minus_OSNo) We take the following as an axiom:
∀z, OSNo z → OSNo (minus_OSNo z)
L65
Axiom. (minus_OSNo_proj0) We take the following as an axiom:
∀z, OSNo z → p0 (:-: z) = - p0 z
L66
Axiom. (minus_OSNo_proj1) We take the following as an axiom:
∀z, OSNo z → p1 (:-: z) = - p1 z
L67
Axiom. (OSNo_conj_OSNo) We take the following as an axiom:
∀z, OSNo z → OSNo (conj_OSNo z)
L68
Axiom. (conj_OSNo_proj0) We take the following as an axiom:
∀z, OSNo z → p0 (z '') = (p0 z) '
L69
Axiom. (conj_OSNo_proj1) We take the following as an axiom:
∀z, OSNo z → p1 (z '') = - p1 z
L70
Axiom. (OSNo_add_OSNo) We take the following as an axiom:
∀z w, OSNo z → OSNo w → OSNo (add_OSNo z w)
L71
Axiom. (add_OSNo_proj0) We take the following as an axiom:
∀z w, OSNo z → OSNo w → p0 (plus' z w) = p0 z + p0 w
L72
Axiom. (add_OSNo_proj1) We take the following as an axiom:
∀z w, OSNo z → OSNo w → p1 (plus' z w) = p1 z + p1 w
L73
Axiom. (OSNo_mul_OSNo) We take the following as an axiom:
∀z w, OSNo z → OSNo w → OSNo (z ⨯ w)
L74
Axiom. (mul_OSNo_proj0) We take the following as an axiom:
∀z w, OSNo z → OSNo w → p0 (mult' z w) = p0 z * p0 w + - (p1 w ' * p1 z)
L75
Axiom. (mul_OSNo_proj1) We take the following as an axiom:
∀z w, OSNo z → OSNo w → p1 (mult' z w) = p1 w * p0 z + p1 z * p0 w '
L76
Axiom. (HSNo_OSNo_proj0) We take the following as an axiom:
∀x, HSNo x → p0 x = x
L77
Axiom. (HSNo_OSNo_proj1) We take the following as an axiom:
∀x, HSNo x → p1 x = 0
L78
Axiom. (OSNo_p0_0) We take the following as an axiom:
p0 0 = 0
L79
Axiom. (OSNo_p1_0) We take the following as an axiom:
p1 0 = 0
L80
Axiom. (OSNo_p0_1) We take the following as an axiom:
p0 1 = 1
L81
Axiom. (OSNo_p1_1) We take the following as an axiom:
p1 1 = 0
L82
Axiom. (OSNo_p0_i) We take the following as an axiom:
p0 i = i
L83
Axiom. (OSNo_p1_i) We take the following as an axiom:
p1 i = 0
L84
Axiom. (OSNo_p0_j) We take the following as an axiom:
p0 j = j
L85
Axiom. (OSNo_p1_j) We take the following as an axiom:
p1 j = 0
L86
Axiom. (OSNo_p0_k) We take the following as an axiom:
p0 k = k
L87
Axiom. (OSNo_p1_k) We take the following as an axiom:
p1 k = 0
L88
Axiom. (minus_OSNo_minus_HSNo) We take the following as an axiom:
∀x, HSNo x → :-: x = - x
L89
Axiom. (minus_OSNo_0) We take the following as an axiom:
:-: 0 = 0
L90
Axiom. (conj_OSNo_conj_HSNo) We take the following as an axiom:
∀x, HSNo x → x '' = x '
L91
Axiom. (conj_OSNo_0) We take the following as an axiom:
0 '' = 0
L92
Axiom. (conj_OSNo_1) We take the following as an axiom:
1 '' = 1
L93
Axiom. (add_OSNo_add_HSNo) We take the following as an axiom:
∀x y, HSNo x → HSNo y → x + y = x + y
L94
Axiom. (mul_OSNo_mul_HSNo) We take the following as an axiom:
∀x y, HSNo x → HSNo y → x ⨯ y = x * y
L95
Axiom. (minus_OSNo_invol) We take the following as an axiom:
∀z, OSNo z → :-: :-: z = z
L96
Axiom. (conj_OSNo_invol) We take the following as an axiom:
∀z, OSNo z → z '' '' = z
L97
Axiom. (conj_minus_OSNo) We take the following as an axiom:
∀z, OSNo z → (:-: z) '' = :-: (z '')
L98
Axiom. (minus_add_OSNo) We take the following as an axiom:
∀z w, OSNo z → OSNo w → :-: (z + w) = :-: z + :-: w
L99
Axiom. (conj_add_OSNo) We take the following as an axiom:
∀z w, OSNo z → OSNo w → (z + w) '' = z '' + w ''
L100
Axiom. (add_OSNo_com) We take the following as an axiom:
∀z w, OSNo z → OSNo w → z + w = w + z
L101
Axiom. (add_OSNo_assoc) We take the following as an axiom:
∀z w v, OSNo z → OSNo w → OSNo v → (z + w) + v = z + (w + v)
L102
Axiom. (add_OSNo_0L) We take the following as an axiom:
∀z, OSNo z → add_OSNo 0 z = z
L103
Axiom. (add_OSNo_0R) We take the following as an axiom:
∀z, OSNo z → add_OSNo z 0 = z
L104
Axiom. (add_OSNo_minus_OSNo_linv) We take the following as an axiom:
∀z, OSNo z → add_OSNo (minus_OSNo z) z = 0
L105
Axiom. (add_OSNo_minus_OSNo_rinv) We take the following as an axiom:
∀z, OSNo z → add_OSNo z (minus_OSNo z) = 0
L106
Axiom. (mul_OSNo_0R) We take the following as an axiom:
∀z, OSNo z → z ⨯ 0 = 0
L107
Axiom. (mul_OSNo_0L) We take the following as an axiom:
∀z, OSNo z → 0 ⨯ z = 0
L108
Axiom. (mul_OSNo_1R) We take the following as an axiom:
∀z, OSNo z → z ⨯ 1 = z
L109
Axiom. (mul_OSNo_1L) We take the following as an axiom:
∀z, OSNo z → 1 ⨯ z = z
L110
Axiom. (conj_mul_OSNo) We take the following as an axiom:
∀z w, OSNo z → OSNo w → (z ⨯ w) '' = w '' ⨯ z ''
L111
Axiom. (mul_OSNo_distrL) We take the following as an axiom:
∀z w u, OSNo z → OSNo w → OSNo u → z ⨯ (w + u) = z ⨯ w + z ⨯ u
L112
Axiom. (mul_OSNo_distrR) We take the following as an axiom:
∀z w u, OSNo z → OSNo w → OSNo u → (z + w) ⨯ u = z ⨯ u + w ⨯ u
L113
Axiom. (minus_mul_OSNo_distrR) We take the following as an axiom:
∀z w, OSNo z → OSNo w → z ⨯ (:-: w) = :-: z ⨯ w
L114
Axiom. (minus_mul_OSNo_distrL) We take the following as an axiom:
∀z w, OSNo z → OSNo w → (:-: z) ⨯ w = :-: z ⨯ w
L115
Axiom. (exp_OSNo_nat_0) We take the following as an axiom:
∀z, z0 = 1
L116
Axiom. (exp_OSNo_nat_S) We take the following as an axiom:
∀z n, nat_p n → z(ordsucc n) = z ⨯ zn
L117
Axiom. (exp_OSNo_nat_1) We take the following as an axiom:
∀z, OSNo z → z1 = z
L118
Axiom. (exp_OSNo_nat_2) We take the following as an axiom:
∀z, OSNo z → z2 = z ⨯ z
L119
Axiom. (OSNo_exp_OSNo_nat) We take the following as an axiom:
∀z, OSNo z → ∀n, nat_p n → OSNo (zn)
L120
Axiom. (add_HSNo_com_3b_1_2) We take the following as an axiom:
∀x y z, HSNo x → HSNo y → HSNo z → (x + y) + z = (x + z) + y
L121
Axiom. (add_HSNo_com_4_inner_mid) We take the following as an axiom:
∀x y z w, HSNo x → HSNo y → HSNo z → HSNo w → (x + y) + (z + w) = (x + z) + (y + w)
L122
Axiom. (add_HSNo_rotate_4_0312) We take the following as an axiom:
∀x y z w, HSNo x → HSNo y → HSNo z → HSNo w → (x + y) + (z + w) = (x + w) + (y + z)
L123
Definition. We define Octonion_i0 to be pa 0 1 of type set.
L124
Definition. We define Octonion_i3 to be pa 0 (- Complex_i) of type set.
L125
Definition. We define Octonion_i5 to be pa 0 (- Quaternion_k) of type set.
L126
Definition. We define Octonion_i6 to be pa 0 (- Quaternion_j) of type set.
L127
Let i0 ≝ Octonion_i0
L128
Let i1 ≝ Complex_i
L129
Let i2 ≝ Quaternion_j
L130
Let i3 ≝ Octonion_i3
L131
Let i4 ≝ Quaternion_k
L132
Let i5 ≝ Octonion_i5
L133
Let i6 ≝ Octonion_i6
L134
Axiom. (OSNo_Complex_i) We take the following as an axiom:
L135
Axiom. (OSNo_Quaternion_j) We take the following as an axiom:
L136
Axiom. (OSNo_Quaternion_k) We take the following as an axiom:
L137
Axiom. (OSNo_Octonion_i0) We take the following as an axiom:
OSNo i0
L138
Axiom. (OSNo_Octonion_i3) We take the following as an axiom:
OSNo i3
L139
Axiom. (OSNo_Octonion_i5) We take the following as an axiom:
OSNo i5
L140
Axiom. (OSNo_Octonion_i6) We take the following as an axiom:
OSNo i6
L141
Axiom. (OSNo_p0_i0) We take the following as an axiom:
p0 i0 = 0
L142
Axiom. (OSNo_p1_i0) We take the following as an axiom:
p1 i0 = 1
L143
Axiom. (OSNo_p0_i3) We take the following as an axiom:
p0 i3 = 0
L144
Axiom. (OSNo_p1_i3) We take the following as an axiom:
p1 i3 = - i
L145
Axiom. (OSNo_p0_i5) We take the following as an axiom:
p0 i5 = 0
L146
Axiom. (OSNo_p1_i5) We take the following as an axiom:
p1 i5 = - k
L147
Axiom. (OSNo_p0_i6) We take the following as an axiom:
p0 i6 = 0
L148
Axiom. (OSNo_p1_i6) We take the following as an axiom:
p1 i6 = - j
L149
Axiom. (Octonion_i1_sqr) We take the following as an axiom:
i1 ⨯ i1 = :-: 1
L150
Axiom. (Octonion_i2_sqr) We take the following as an axiom:
i2 ⨯ i2 = :-: 1
L151
Axiom. (Octonion_i4_sqr) We take the following as an axiom:
i4 ⨯ i4 = :-: 1
L152
Axiom. (Octonion_i0_sqr) We take the following as an axiom:
i0 ⨯ i0 = :-: 1
L153
Axiom. (Octonion_i3_sqr) We take the following as an axiom:
i3 ⨯ i3 = :-: 1
L154
Axiom. (Octonion_i5_sqr) We take the following as an axiom:
i5 ⨯ i5 = :-: 1
L155
Axiom. (Octonion_i6_sqr) We take the following as an axiom:
i6 ⨯ i6 = :-: 1
L156
Axiom. (Octonion_i1_i2) We take the following as an axiom:
i1 ⨯ i2 = i4
L157
Axiom. (Octonion_i2_i1) We take the following as an axiom:
i2 ⨯ i1 = :-: i4
L158
Axiom. (Octonion_i2_i4) We take the following as an axiom:
i2 ⨯ i4 = i1
L159
Axiom. (Octonion_i4_i2) We take the following as an axiom:
i4 ⨯ i2 = :-: i1
L160
Axiom. (Octonion_i4_i1) We take the following as an axiom:
i4 ⨯ i1 = i2
L161
Axiom. (Octonion_i1_i4) We take the following as an axiom:
i1 ⨯ i4 = :-: i2
L162
Axiom. (Octonion_i2_i3) We take the following as an axiom:
i2 ⨯ i3 = i5
L163
Axiom. (Octonion_i3_i2) We take the following as an axiom:
i3 ⨯ i2 = :-: i5
L164
Axiom. (Octonion_i3_i5) We take the following as an axiom:
i3 ⨯ i5 = i2
L165
Axiom. (Octonion_i5_i3) We take the following as an axiom:
i5 ⨯ i3 = :-: i2
L166
Axiom. (Octonion_i5_i2) We take the following as an axiom:
i5 ⨯ i2 = i3
L167
Axiom. (Octonion_i2_i5) We take the following as an axiom:
i2 ⨯ i5 = :-: i3
L168
Axiom. (Octonion_i3_i4) We take the following as an axiom:
i3 ⨯ i4 = i6
L169
Axiom. (Octonion_i4_i3) We take the following as an axiom:
i4 ⨯ i3 = :-: i6
L170
Axiom. (Octonion_i4_i6) We take the following as an axiom:
i4 ⨯ i6 = i3
L171
Axiom. (Octonion_i6_i4) We take the following as an axiom:
i6 ⨯ i4 = :-: i3
L172
Axiom. (Octonion_i6_i3) We take the following as an axiom:
i6 ⨯ i3 = i4
L173
Axiom. (Octonion_i3_i6) We take the following as an axiom:
i3 ⨯ i6 = :-: i4
L174
Axiom. (Octonion_i4_i5) We take the following as an axiom:
i4 ⨯ i5 = i0
L175
Axiom. (Octonion_i5_i4) We take the following as an axiom:
i5 ⨯ i4 = :-: i0
L176
Axiom. (Octonion_i5_i0) We take the following as an axiom:
i5 ⨯ i0 = i4
L177
Axiom. (Octonion_i0_i5) We take the following as an axiom:
i0 ⨯ i5 = :-: i4
L178
Axiom. (Octonion_i0_i4) We take the following as an axiom:
i0 ⨯ i4 = i5
L179
Axiom. (Octonion_i4_i0) We take the following as an axiom:
i4 ⨯ i0 = :-: i5
L180
Axiom. (Octonion_i5_i6) We take the following as an axiom:
i5 ⨯ i6 = i1
L181
Axiom. (Octonion_i6_i5) We take the following as an axiom:
i6 ⨯ i5 = :-: i1
L182
Axiom. (Octonion_i6_i1) We take the following as an axiom:
i6 ⨯ i1 = i5
L183
Axiom. (Octonion_i1_i6) We take the following as an axiom:
i1 ⨯ i6 = :-: i5
L184
Axiom. (Octonion_i1_i5) We take the following as an axiom:
i1 ⨯ i5 = i6
L185
Axiom. (Octonion_i5_i1) We take the following as an axiom:
i5 ⨯ i1 = :-: i6
L186
Axiom. (Octonion_i6_i0) We take the following as an axiom:
i6 ⨯ i0 = i2
L187
Axiom. (Octonion_i0_i6) We take the following as an axiom:
i0 ⨯ i6 = :-: i2
L188
Axiom. (Octonion_i0_i2) We take the following as an axiom:
i0 ⨯ i2 = i6
L189
Axiom. (Octonion_i2_i0) We take the following as an axiom:
i2 ⨯ i0 = :-: i6
L190
Axiom. (Octonion_i2_i6) We take the following as an axiom:
i2 ⨯ i6 = i0
L191
Axiom. (Octonion_i6_i2) We take the following as an axiom:
i6 ⨯ i2 = :-: i0
L192
Axiom. (Octonion_i0_i1) We take the following as an axiom:
i0 ⨯ i1 = i3
L193
Axiom. (Octonion_i1_i0) We take the following as an axiom:
i1 ⨯ i0 = :-: i3
L194
Axiom. (Octonion_i1_i3) We take the following as an axiom:
i1 ⨯ i3 = i0
L195
Axiom. (Octonion_i3_i1) We take the following as an axiom:
i3 ⨯ i1 = :-: i0
L196
Axiom. (Octonion_i3_i0) We take the following as an axiom:
i3 ⨯ i0 = i1
L197
Axiom. (Octonion_i0_i3) We take the following as an axiom:
i0 ⨯ i3 = :-: i1
End of Section SurOctonions
Beginning of Section Octonions
Notation. We use - as a prefix operator with priority 358 corresponding to applying term minus_OSNo.
Notation. We use + as an infix operator with priority 360 and which associates to the right corresponding to applying term add_OSNo.
Notation. We use * as an infix operator with priority 355 and which associates to the right corresponding to applying term mul_OSNo.
L203
Let i0 ≝ Octonion_i0
L204
Let i1 ≝ Complex_i
L205
Let i2 ≝ Quaternion_j
L206
Let i3 ≝ Octonion_i3
L207
Let i4 ≝ Quaternion_k
L208
Let i5 ≝ Octonion_i5
L209
Let i6 ≝ Octonion_i6
L210
Let i ≝ Complex_i
L211
Let j ≝ Quaternion_j
L212
Let k ≝ Quaternion_k
L213
Let p0 : set → set ≝ OSNo_proj0
L214
Let p1 : set → set ≝ OSNo_proj1
L215
Let pa : set → set → set ≝ HSNo_pair
L216
Definition. We define octonion to be {pa (u 0) (u 1)|u ∈ quaternion ⨯ quaternion} of type set.
L217
Axiom. (octonion_I) We take the following as an axiom:
∀x y ∈ quaternion, pa x y ∈ octonion
L218
Axiom. (octonion_E) We take the following as an axiom:
∀z ∈ octonion, ∀p : prop, (∀x y ∈ quaternion, z = pa x y → p) → p
L219
Axiom. (octonion_OSNo) We take the following as an axiom:
L220
Axiom. (quaternion_octonion) We take the following as an axiom:
quaternion ⊆ octonion
L221
Axiom. (octonion_0) We take the following as an axiom:
L222
Axiom. (octonion_1) We take the following as an axiom:
L223
Axiom. (octonion_i) We take the following as an axiom:
L224
Axiom. (octonion_j) We take the following as an axiom:
L225
Axiom. (octonion_k) We take the following as an axiom:
L226
Axiom. (octonion_i0) We take the following as an axiom:
L227
Axiom. (octonion_i3) We take the following as an axiom:
L228
Axiom. (octonion_i5) We take the following as an axiom:
L229
Axiom. (octonion_i6) We take the following as an axiom:
L230
Axiom. (octonion_p0_eq) We take the following as an axiom:
∀x y ∈ quaternion, p0 (pa x y) = x
L231
Axiom. (octonion_p1_eq) We take the following as an axiom:
∀x y ∈ quaternion, p1 (pa x y) = y
L232
Axiom. (octonion_p0_quaternion) We take the following as an axiom:
∀z ∈ octonion, p0 z ∈ quaternion
L233
Axiom. (octonion_p1_quaternion) We take the following as an axiom:
∀z ∈ octonion, p1 z ∈ quaternion
L234
Axiom. (octonion_proj0proj1_split) We take the following as an axiom:
∀z w ∈ octonion, p0 z = p0 w → p1 z = p1 w → z = w
L235
Axiom. (octonion_minus_OSNo) We take the following as an axiom:
L236
Axiom. (octonion_conj_OSNo) We take the following as an axiom:
L237
Axiom. (octonion_add_OSNo) We take the following as an axiom:
L238
Axiom. (octonion_mul_OSNo) We take the following as an axiom:
L239
Axiom. (quaternion_p0_eq') We take the following as an axiom:
∀x ∈ quaternion, p0 x = x
L240
Axiom. (quaternion_p1_eq') We take the following as an axiom:
∀x ∈ quaternion, p1 x = 0
End of Section Octonions