Metamath Proof Explorer


Theorem ndmovass

Description: Any operation is associative outside its domain, if the domain doesn't contain the empty set. (Contributed by NM, 24-Aug-1995)

Ref Expression
Hypotheses ndmov.1 ⊢ dom 𝐹 = ( 𝑆 × 𝑆 )
ndmov.5 ⊢ ¬ ∅ ∈ 𝑆
Assertion ndmovass ( ¬ ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) → ( ( 𝐴 𝐹 𝐵 ) 𝐹 𝐶 ) = ( 𝐴 𝐹 ( 𝐵 𝐹 𝐶 ) ) )

Proof

Step Hyp Ref Expression
1 ndmov.1 ⊢ dom 𝐹 = ( 𝑆 × 𝑆 )
2 ndmov.5 ⊢ ¬ ∅ ∈ 𝑆
3 1 2 ndmovrcl ⊢ ( ( 𝐴 𝐹 𝐵 ) ∈ 𝑆 → ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ) )
4 3 anim1i ⊢ ( ( ( 𝐴 𝐹 𝐵 ) ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) → ( ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ) ∧ 𝐶 ∈ 𝑆 ) )
5 df-3an ⊢ ( ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) ↔ ( ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ) ∧ 𝐶 ∈ 𝑆 ) )
6 4 5 sylibr ⊢ ( ( ( 𝐴 𝐹 𝐵 ) ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) → ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) )
7 1 ndmov ⊢ ( ¬ ( ( 𝐴 𝐹 𝐵 ) ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) → ( ( 𝐴 𝐹 𝐵 ) 𝐹 𝐶 ) = ∅ )
8 6 7 nsyl5 ⊢ ( ¬ ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) → ( ( 𝐴 𝐹 𝐵 ) 𝐹 𝐶 ) = ∅ )
9 1 2 ndmovrcl ⊢ ( ( 𝐵 𝐹 𝐶 ) ∈ 𝑆 → ( 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) )
10 9 anim2i ⊢ ( ( 𝐴 ∈ 𝑆 ∧ ( 𝐵 𝐹 𝐶 ) ∈ 𝑆 ) → ( 𝐴 ∈ 𝑆 ∧ ( 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) ) )
11 3anass ⊢ ( ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) ↔ ( 𝐴 ∈ 𝑆 ∧ ( 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) ) )
12 10 11 sylibr ⊢ ( ( 𝐴 ∈ 𝑆 ∧ ( 𝐵 𝐹 𝐶 ) ∈ 𝑆 ) → ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) )
13 1 ndmov ⊢ ( ¬ ( 𝐴 ∈ 𝑆 ∧ ( 𝐵 𝐹 𝐶 ) ∈ 𝑆 ) → ( 𝐴 𝐹 ( 𝐵 𝐹 𝐶 ) ) = ∅ )
14 12 13 nsyl5 ⊢ ( ¬ ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) → ( 𝐴 𝐹 ( 𝐵 𝐹 𝐶 ) ) = ∅ )
15 8 14 eqtr4d ⊢ ( ¬ ( 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆 ∧ 𝐶 ∈ 𝑆 ) → ( ( 𝐴 𝐹 𝐵 ) 𝐹 𝐶 ) = ( 𝐴 𝐹 ( 𝐵 𝐹 𝐶 ) ) )