| Step | Hyp | Ref | Expression | 
						
							| 1 |  | ecopopr.1 | ⊢  ∼   =  { 〈 𝑥 ,  𝑦 〉  ∣  ( ( 𝑥  ∈  ( 𝑆  ×  𝑆 )  ∧  𝑦  ∈  ( 𝑆  ×  𝑆 ) )  ∧  ∃ 𝑧 ∃ 𝑤 ∃ 𝑣 ∃ 𝑢 ( ( 𝑥  =  〈 𝑧 ,  𝑤 〉  ∧  𝑦  =  〈 𝑣 ,  𝑢 〉 )  ∧  ( 𝑧  +  𝑢 )  =  ( 𝑤  +  𝑣 ) ) ) } | 
						
							| 2 |  | ecopopr.com | ⊢ ( 𝑥  +  𝑦 )  =  ( 𝑦  +  𝑥 ) | 
						
							| 3 |  | ecopopr.cl | ⊢ ( ( 𝑥  ∈  𝑆  ∧  𝑦  ∈  𝑆 )  →  ( 𝑥  +  𝑦 )  ∈  𝑆 ) | 
						
							| 4 |  | ecopopr.ass | ⊢ ( ( 𝑥  +  𝑦 )  +  𝑧 )  =  ( 𝑥  +  ( 𝑦  +  𝑧 ) ) | 
						
							| 5 |  | ecopopr.can | ⊢ ( ( 𝑥  ∈  𝑆  ∧  𝑦  ∈  𝑆 )  →  ( ( 𝑥  +  𝑦 )  =  ( 𝑥  +  𝑧 )  →  𝑦  =  𝑧 ) ) | 
						
							| 6 |  | opabssxp | ⊢ { 〈 𝑥 ,  𝑦 〉  ∣  ( ( 𝑥  ∈  ( 𝑆  ×  𝑆 )  ∧  𝑦  ∈  ( 𝑆  ×  𝑆 ) )  ∧  ∃ 𝑧 ∃ 𝑤 ∃ 𝑣 ∃ 𝑢 ( ( 𝑥  =  〈 𝑧 ,  𝑤 〉  ∧  𝑦  =  〈 𝑣 ,  𝑢 〉 )  ∧  ( 𝑧  +  𝑢 )  =  ( 𝑤  +  𝑣 ) ) ) }  ⊆  ( ( 𝑆  ×  𝑆 )  ×  ( 𝑆  ×  𝑆 ) ) | 
						
							| 7 | 1 6 | eqsstri | ⊢  ∼   ⊆  ( ( 𝑆  ×  𝑆 )  ×  ( 𝑆  ×  𝑆 ) ) | 
						
							| 8 | 7 | brel | ⊢ ( 𝐴  ∼  𝐵  →  ( 𝐴  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐵  ∈  ( 𝑆  ×  𝑆 ) ) ) | 
						
							| 9 | 8 | simpld | ⊢ ( 𝐴  ∼  𝐵  →  𝐴  ∈  ( 𝑆  ×  𝑆 ) ) | 
						
							| 10 | 7 | brel | ⊢ ( 𝐵  ∼  𝐶  →  ( 𝐵  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐶  ∈  ( 𝑆  ×  𝑆 ) ) ) | 
						
							| 11 | 9 10 | anim12i | ⊢ ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  𝐶 )  →  ( 𝐴  ∈  ( 𝑆  ×  𝑆 )  ∧  ( 𝐵  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐶  ∈  ( 𝑆  ×  𝑆 ) ) ) ) | 
						
							| 12 |  | 3anass | ⊢ ( ( 𝐴  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐵  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐶  ∈  ( 𝑆  ×  𝑆 ) )  ↔  ( 𝐴  ∈  ( 𝑆  ×  𝑆 )  ∧  ( 𝐵  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐶  ∈  ( 𝑆  ×  𝑆 ) ) ) ) | 
						
							| 13 | 11 12 | sylibr | ⊢ ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  𝐶 )  →  ( 𝐴  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐵  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐶  ∈  ( 𝑆  ×  𝑆 ) ) ) | 
						
							| 14 |  | eqid | ⊢ ( 𝑆  ×  𝑆 )  =  ( 𝑆  ×  𝑆 ) | 
						
							| 15 |  | breq1 | ⊢ ( 〈 𝑓 ,  𝑔 〉  =  𝐴  →  ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ↔  𝐴  ∼  〈 ℎ ,  𝑡 〉 ) ) | 
						
							| 16 | 15 | anbi1d | ⊢ ( 〈 𝑓 ,  𝑔 〉  =  𝐴  →  ( ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  ↔  ( 𝐴  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 ) ) ) | 
						
							| 17 |  | breq1 | ⊢ ( 〈 𝑓 ,  𝑔 〉  =  𝐴  →  ( 〈 𝑓 ,  𝑔 〉  ∼  〈 𝑠 ,  𝑟 〉  ↔  𝐴  ∼  〈 𝑠 ,  𝑟 〉 ) ) | 
						
							| 18 | 16 17 | imbi12d | ⊢ ( 〈 𝑓 ,  𝑔 〉  =  𝐴  →  ( ( ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  →  〈 𝑓 ,  𝑔 〉  ∼  〈 𝑠 ,  𝑟 〉 )  ↔  ( ( 𝐴  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  →  𝐴  ∼  〈 𝑠 ,  𝑟 〉 ) ) ) | 
						
							| 19 |  | breq2 | ⊢ ( 〈 ℎ ,  𝑡 〉  =  𝐵  →  ( 𝐴  ∼  〈 ℎ ,  𝑡 〉  ↔  𝐴  ∼  𝐵 ) ) | 
						
							| 20 |  | breq1 | ⊢ ( 〈 ℎ ,  𝑡 〉  =  𝐵  →  ( 〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉  ↔  𝐵  ∼  〈 𝑠 ,  𝑟 〉 ) ) | 
						
							| 21 | 19 20 | anbi12d | ⊢ ( 〈 ℎ ,  𝑡 〉  =  𝐵  →  ( ( 𝐴  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  ↔  ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  〈 𝑠 ,  𝑟 〉 ) ) ) | 
						
							| 22 | 21 | imbi1d | ⊢ ( 〈 ℎ ,  𝑡 〉  =  𝐵  →  ( ( ( 𝐴  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  →  𝐴  ∼  〈 𝑠 ,  𝑟 〉 )  ↔  ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  〈 𝑠 ,  𝑟 〉 )  →  𝐴  ∼  〈 𝑠 ,  𝑟 〉 ) ) ) | 
						
							| 23 |  | breq2 | ⊢ ( 〈 𝑠 ,  𝑟 〉  =  𝐶  →  ( 𝐵  ∼  〈 𝑠 ,  𝑟 〉  ↔  𝐵  ∼  𝐶 ) ) | 
						
							| 24 | 23 | anbi2d | ⊢ ( 〈 𝑠 ,  𝑟 〉  =  𝐶  →  ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  〈 𝑠 ,  𝑟 〉 )  ↔  ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  𝐶 ) ) ) | 
						
							| 25 |  | breq2 | ⊢ ( 〈 𝑠 ,  𝑟 〉  =  𝐶  →  ( 𝐴  ∼  〈 𝑠 ,  𝑟 〉  ↔  𝐴  ∼  𝐶 ) ) | 
						
							| 26 | 24 25 | imbi12d | ⊢ ( 〈 𝑠 ,  𝑟 〉  =  𝐶  →  ( ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  〈 𝑠 ,  𝑟 〉 )  →  𝐴  ∼  〈 𝑠 ,  𝑟 〉 )  ↔  ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  𝐶 )  →  𝐴  ∼  𝐶 ) ) ) | 
						
							| 27 | 1 | ecopoveq | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 ) )  →  ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ↔  ( 𝑓  +  𝑡 )  =  ( 𝑔  +  ℎ ) ) ) | 
						
							| 28 | 27 | 3adant3 | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ↔  ( 𝑓  +  𝑡 )  =  ( 𝑔  +  ℎ ) ) ) | 
						
							| 29 | 1 | ecopoveq | ⊢ ( ( ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( 〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉  ↔  ( ℎ  +  𝑟 )  =  ( 𝑡  +  𝑠 ) ) ) | 
						
							| 30 | 29 | 3adant1 | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( 〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉  ↔  ( ℎ  +  𝑟 )  =  ( 𝑡  +  𝑠 ) ) ) | 
						
							| 31 | 28 30 | anbi12d | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  ↔  ( ( 𝑓  +  𝑡 )  =  ( 𝑔  +  ℎ )  ∧  ( ℎ  +  𝑟 )  =  ( 𝑡  +  𝑠 ) ) ) ) | 
						
							| 32 |  | oveq12 | ⊢ ( ( ( 𝑓  +  𝑡 )  =  ( 𝑔  +  ℎ )  ∧  ( ℎ  +  𝑟 )  =  ( 𝑡  +  𝑠 ) )  →  ( ( 𝑓  +  𝑡 )  +  ( ℎ  +  𝑟 ) )  =  ( ( 𝑔  +  ℎ )  +  ( 𝑡  +  𝑠 ) ) ) | 
						
							| 33 |  | vex | ⊢ ℎ  ∈  V | 
						
							| 34 |  | vex | ⊢ 𝑡  ∈  V | 
						
							| 35 |  | vex | ⊢ 𝑓  ∈  V | 
						
							| 36 |  | vex | ⊢ 𝑟  ∈  V | 
						
							| 37 | 33 34 35 2 4 36 | caov411 | ⊢ ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( 𝑓  +  𝑡 )  +  ( ℎ  +  𝑟 ) ) | 
						
							| 38 |  | vex | ⊢ 𝑔  ∈  V | 
						
							| 39 |  | vex | ⊢ 𝑠  ∈  V | 
						
							| 40 | 38 34 33 2 4 39 | caov411 | ⊢ ( ( 𝑔  +  𝑡 )  +  ( ℎ  +  𝑠 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) ) | 
						
							| 41 | 38 34 33 2 4 39 | caov4 | ⊢ ( ( 𝑔  +  𝑡 )  +  ( ℎ  +  𝑠 ) )  =  ( ( 𝑔  +  ℎ )  +  ( 𝑡  +  𝑠 ) ) | 
						
							| 42 | 40 41 | eqtr3i | ⊢ ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) )  =  ( ( 𝑔  +  ℎ )  +  ( 𝑡  +  𝑠 ) ) | 
						
							| 43 | 32 37 42 | 3eqtr4g | ⊢ ( ( ( 𝑓  +  𝑡 )  =  ( 𝑔  +  ℎ )  ∧  ( ℎ  +  𝑟 )  =  ( 𝑡  +  𝑠 ) )  →  ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 44 | 31 43 | biimtrdi | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  →  ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) ) ) ) | 
						
							| 45 | 3 | caovcl | ⊢ ( ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  →  ( ℎ  +  𝑡 )  ∈  𝑆 ) | 
						
							| 46 | 3 | caovcl | ⊢ ( ( 𝑓  ∈  𝑆  ∧  𝑟  ∈  𝑆 )  →  ( 𝑓  +  𝑟 )  ∈  𝑆 ) | 
						
							| 47 |  | ovex | ⊢ ( 𝑔  +  𝑠 )  ∈  V | 
						
							| 48 | 47 5 | caovcan | ⊢ ( ( ( ℎ  +  𝑡 )  ∈  𝑆  ∧  ( 𝑓  +  𝑟 )  ∈  𝑆 )  →  ( ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) )  →  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 49 | 45 46 48 | syl2an | ⊢ ( ( ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑓  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) )  →  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 50 | 49 | 3impb | ⊢ ( ( ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  𝑓  ∈  𝑆  ∧  𝑟  ∈  𝑆 )  →  ( ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) )  →  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 51 | 50 | 3com12 | ⊢ ( ( 𝑓  ∈  𝑆  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  𝑟  ∈  𝑆 )  →  ( ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) )  →  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 52 | 51 | 3adant3l | ⊢ ( ( 𝑓  ∈  𝑆  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) )  →  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 53 | 52 | 3adant1r | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( ( ( ℎ  +  𝑡 )  +  ( 𝑓  +  𝑟 ) )  =  ( ( ℎ  +  𝑡 )  +  ( 𝑔  +  𝑠 ) )  →  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 54 | 44 53 | syld | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  →  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 55 | 1 | ecopoveq | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( 〈 𝑓 ,  𝑔 〉  ∼  〈 𝑠 ,  𝑟 〉  ↔  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 56 | 55 | 3adant2 | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( 〈 𝑓 ,  𝑔 〉  ∼  〈 𝑠 ,  𝑟 〉  ↔  ( 𝑓  +  𝑟 )  =  ( 𝑔  +  𝑠 ) ) ) | 
						
							| 57 | 54 56 | sylibrd | ⊢ ( ( ( 𝑓  ∈  𝑆  ∧  𝑔  ∈  𝑆 )  ∧  ( ℎ  ∈  𝑆  ∧  𝑡  ∈  𝑆 )  ∧  ( 𝑠  ∈  𝑆  ∧  𝑟  ∈  𝑆 ) )  →  ( ( 〈 𝑓 ,  𝑔 〉  ∼  〈 ℎ ,  𝑡 〉  ∧  〈 ℎ ,  𝑡 〉  ∼  〈 𝑠 ,  𝑟 〉 )  →  〈 𝑓 ,  𝑔 〉  ∼  〈 𝑠 ,  𝑟 〉 ) ) | 
						
							| 58 | 14 18 22 26 57 | 3optocl | ⊢ ( ( 𝐴  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐵  ∈  ( 𝑆  ×  𝑆 )  ∧  𝐶  ∈  ( 𝑆  ×  𝑆 ) )  →  ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  𝐶 )  →  𝐴  ∼  𝐶 ) ) | 
						
							| 59 | 13 58 | mpcom | ⊢ ( ( 𝐴  ∼  𝐵  ∧  𝐵  ∼  𝐶 )  →  𝐴  ∼  𝐶 ) |