Metamath Proof Explorer


Theorem omndadd

Description: In an ordered monoid, the ordering is compatible with group addition. (Contributed by Thierry Arnoux, 30-Jan-2018)

Ref Expression
Hypotheses omndadd.0 𝐵 = ( Base ‘ 𝑀 )
omndadd.1 = ( le ‘ 𝑀 )
omndadd.2 + = ( +g𝑀 )
Assertion omndadd ( ( 𝑀 ∈ oMnd ∧ ( 𝑋𝐵𝑌𝐵𝑍𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑋 + 𝑍 ) ( 𝑌 + 𝑍 ) )

Proof

Step Hyp Ref Expression
1 omndadd.0 𝐵 = ( Base ‘ 𝑀 )
2 omndadd.1 = ( le ‘ 𝑀 )
3 omndadd.2 + = ( +g𝑀 )
4 1 3 2 isomnd ( 𝑀 ∈ oMnd ↔ ( 𝑀 ∈ Mnd ∧ 𝑀 ∈ Toset ∧ ∀ 𝑎𝐵𝑏𝐵𝑐𝐵 ( 𝑎 𝑏 → ( 𝑎 + 𝑐 ) ( 𝑏 + 𝑐 ) ) ) )
5 4 simp3bi ( 𝑀 ∈ oMnd → ∀ 𝑎𝐵𝑏𝐵𝑐𝐵 ( 𝑎 𝑏 → ( 𝑎 + 𝑐 ) ( 𝑏 + 𝑐 ) ) )
6 breq1 ( 𝑎 = 𝑋 → ( 𝑎 𝑏𝑋 𝑏 ) )
7 oveq1 ( 𝑎 = 𝑋 → ( 𝑎 + 𝑐 ) = ( 𝑋 + 𝑐 ) )
8 7 breq1d ( 𝑎 = 𝑋 → ( ( 𝑎 + 𝑐 ) ( 𝑏 + 𝑐 ) ↔ ( 𝑋 + 𝑐 ) ( 𝑏 + 𝑐 ) ) )
9 6 8 imbi12d ( 𝑎 = 𝑋 → ( ( 𝑎 𝑏 → ( 𝑎 + 𝑐 ) ( 𝑏 + 𝑐 ) ) ↔ ( 𝑋 𝑏 → ( 𝑋 + 𝑐 ) ( 𝑏 + 𝑐 ) ) ) )
10 breq2 ( 𝑏 = 𝑌 → ( 𝑋 𝑏𝑋 𝑌 ) )
11 oveq1 ( 𝑏 = 𝑌 → ( 𝑏 + 𝑐 ) = ( 𝑌 + 𝑐 ) )
12 11 breq2d ( 𝑏 = 𝑌 → ( ( 𝑋 + 𝑐 ) ( 𝑏 + 𝑐 ) ↔ ( 𝑋 + 𝑐 ) ( 𝑌 + 𝑐 ) ) )
13 10 12 imbi12d ( 𝑏 = 𝑌 → ( ( 𝑋 𝑏 → ( 𝑋 + 𝑐 ) ( 𝑏 + 𝑐 ) ) ↔ ( 𝑋 𝑌 → ( 𝑋 + 𝑐 ) ( 𝑌 + 𝑐 ) ) ) )
14 oveq2 ( 𝑐 = 𝑍 → ( 𝑋 + 𝑐 ) = ( 𝑋 + 𝑍 ) )
15 oveq2 ( 𝑐 = 𝑍 → ( 𝑌 + 𝑐 ) = ( 𝑌 + 𝑍 ) )
16 14 15 breq12d ( 𝑐 = 𝑍 → ( ( 𝑋 + 𝑐 ) ( 𝑌 + 𝑐 ) ↔ ( 𝑋 + 𝑍 ) ( 𝑌 + 𝑍 ) ) )
17 16 imbi2d ( 𝑐 = 𝑍 → ( ( 𝑋 𝑌 → ( 𝑋 + 𝑐 ) ( 𝑌 + 𝑐 ) ) ↔ ( 𝑋 𝑌 → ( 𝑋 + 𝑍 ) ( 𝑌 + 𝑍 ) ) ) )
18 9 13 17 rspc3v ( ( 𝑋𝐵𝑌𝐵𝑍𝐵 ) → ( ∀ 𝑎𝐵𝑏𝐵𝑐𝐵 ( 𝑎 𝑏 → ( 𝑎 + 𝑐 ) ( 𝑏 + 𝑐 ) ) → ( 𝑋 𝑌 → ( 𝑋 + 𝑍 ) ( 𝑌 + 𝑍 ) ) ) )
19 5 18 mpan9 ( ( 𝑀 ∈ oMnd ∧ ( 𝑋𝐵𝑌𝐵𝑍𝐵 ) ) → ( 𝑋 𝑌 → ( 𝑋 + 𝑍 ) ( 𝑌 + 𝑍 ) ) )
20 19 3impia ( ( 𝑀 ∈ oMnd ∧ ( 𝑋𝐵𝑌𝐵𝑍𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑋 + 𝑍 ) ( 𝑌 + 𝑍 ) )