Metamath Proof Explorer


Theorem mgcval

Description: Monotone Galois connection between two functions F and G . If this relation is satisfied, F is called the lower adjoint of G , and G is called the upper adjoint of F .

Technically, this is implemented as an operation taking a pair of structures V and W , expected to be posets, which gives a relation between pairs of functions F and G .

If such a relation exists, it can be proven to be unique.

Galois connections generalize the fundamental theorem of Galois theory about the correspondence between subgroups and subfields. (Contributed by Thierry Arnoux, 23-Apr-2024)

Ref Expression
Hypotheses mgcoval.1 𝐴 = ( Base ‘ 𝑉 )
mgcoval.2 𝐵 = ( Base ‘ 𝑊 )
mgcoval.3 = ( le ‘ 𝑉 )
mgcoval.4 = ( le ‘ 𝑊 )
mgcval.1 𝐻 = ( 𝑉 MGalConn 𝑊 )
mgcval.2 ( 𝜑𝑉 ∈ Proset )
mgcval.3 ( 𝜑𝑊 ∈ Proset )
Assertion mgcval ( 𝜑 → ( 𝐹 𝐻 𝐺 ↔ ( ( 𝐹 : 𝐴𝐵𝐺 : 𝐵𝐴 ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) ) )

Proof

Step Hyp Ref Expression
1 mgcoval.1 𝐴 = ( Base ‘ 𝑉 )
2 mgcoval.2 𝐵 = ( Base ‘ 𝑊 )
3 mgcoval.3 = ( le ‘ 𝑉 )
4 mgcoval.4 = ( le ‘ 𝑊 )
5 mgcval.1 𝐻 = ( 𝑉 MGalConn 𝑊 )
6 mgcval.2 ( 𝜑𝑉 ∈ Proset )
7 mgcval.3 ( 𝜑𝑊 ∈ Proset )
8 1 2 3 4 mgcoval ( ( 𝑉 ∈ Proset ∧ 𝑊 ∈ Proset ) → ( 𝑉 MGalConn 𝑊 ) = { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) } )
9 6 7 8 syl2anc ( 𝜑 → ( 𝑉 MGalConn 𝑊 ) = { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) } )
10 5 9 syl5eq ( 𝜑𝐻 = { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) } )
11 10 breqd ( 𝜑 → ( 𝐹 𝐻 𝐺𝐹 { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) } 𝐺 ) )
12 fveq1 ( 𝑓 = 𝐹 → ( 𝑓𝑥 ) = ( 𝐹𝑥 ) )
13 12 adantr ( ( 𝑓 = 𝐹𝑔 = 𝐺 ) → ( 𝑓𝑥 ) = ( 𝐹𝑥 ) )
14 13 breq1d ( ( 𝑓 = 𝐹𝑔 = 𝐺 ) → ( ( 𝑓𝑥 ) 𝑦 ↔ ( 𝐹𝑥 ) 𝑦 ) )
15 fveq1 ( 𝑔 = 𝐺 → ( 𝑔𝑦 ) = ( 𝐺𝑦 ) )
16 15 adantl ( ( 𝑓 = 𝐹𝑔 = 𝐺 ) → ( 𝑔𝑦 ) = ( 𝐺𝑦 ) )
17 16 breq2d ( ( 𝑓 = 𝐹𝑔 = 𝐺 ) → ( 𝑥 ( 𝑔𝑦 ) ↔ 𝑥 ( 𝐺𝑦 ) ) )
18 14 17 bibi12d ( ( 𝑓 = 𝐹𝑔 = 𝐺 ) → ( ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ↔ ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) )
19 18 2ralbidv ( ( 𝑓 = 𝐹𝑔 = 𝐺 ) → ( ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ↔ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) )
20 eqid { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) } = { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) }
21 19 20 brab2a ( 𝐹 { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) } 𝐺 ↔ ( ( 𝐹 ∈ ( 𝐵m 𝐴 ) ∧ 𝐺 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) )
22 2 fvexi 𝐵 ∈ V
23 1 fvexi 𝐴 ∈ V
24 22 23 elmap ( 𝐹 ∈ ( 𝐵m 𝐴 ) ↔ 𝐹 : 𝐴𝐵 )
25 23 22 elmap ( 𝐺 ∈ ( 𝐴m 𝐵 ) ↔ 𝐺 : 𝐵𝐴 )
26 24 25 anbi12i ( ( 𝐹 ∈ ( 𝐵m 𝐴 ) ∧ 𝐺 ∈ ( 𝐴m 𝐵 ) ) ↔ ( 𝐹 : 𝐴𝐵𝐺 : 𝐵𝐴 ) )
27 26 anbi1i ( ( ( 𝐹 ∈ ( 𝐵m 𝐴 ) ∧ 𝐺 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) ↔ ( ( 𝐹 : 𝐴𝐵𝐺 : 𝐵𝐴 ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) )
28 21 27 bitr2i ( ( ( 𝐹 : 𝐴𝐵𝐺 : 𝐵𝐴 ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) ↔ 𝐹 { ⟨ 𝑓 , 𝑔 ⟩ ∣ ( ( 𝑓 ∈ ( 𝐵m 𝐴 ) ∧ 𝑔 ∈ ( 𝐴m 𝐵 ) ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝑓𝑥 ) 𝑦𝑥 ( 𝑔𝑦 ) ) ) } 𝐺 )
29 11 28 bitr4di ( 𝜑 → ( 𝐹 𝐻 𝐺 ↔ ( ( 𝐹 : 𝐴𝐵𝐺 : 𝐵𝐴 ) ∧ ∀ 𝑥𝐴𝑦𝐵 ( ( 𝐹𝑥 ) 𝑦𝑥 ( 𝐺𝑦 ) ) ) ) )