ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- GaloisConnection.dual
protected theorem dual {l : α → β} {u : β → α} (gc : GaloisConnection l u) :
    GaloisConnection (OrderDual.toDual ∘ u ∘ OrderDual.ofDual)
      (OrderDual.toDual ∘ l ∘ OrderDual.ofDual) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: GaloisConnection (⇑OrderDual.toDual ∘ u ∘ ⇑OrderDual.ofDual) (⇑OrderDual.toDual ∘ l ∘ ⇑OrderDual.ofDual)
-- GaloisConnection.le_iff_le
theorem le_iff_le {a : α} {b : β} : l a ≤ b ↔ a ≤ u b 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {a : α} {b : β}
Goal: l a ≤ b ↔ a ≤ u b
-- GaloisConnection.l_le
theorem l_le {a : α} {b : β} : a ≤ u b → l a ≤ b 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {a : α} {b : β}
Goal: a ≤ u b → l a ≤ b
-- GaloisConnection.le_u
theorem le_u {a : α} {b : β} : l a ≤ b → a ≤ u b 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {a : α} {b : β}
Goal: l a ≤ b → a ≤ u b
-- GaloisConnection.le_u_l
theorem le_u_l (a) : a ≤ u (l a) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (a : α)
Goal: a ≤ u (l a)
-- GaloisConnection.l_u_le
theorem l_u_le (a) : l (u a) ≤ a 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (a : β)
Goal: l (u a) ≤ a
-- GaloisConnection.monotone_u
theorem monotone_u : Monotone u 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: Monotone u
-- GaloisConnection.monotone_l
theorem monotone_l : Monotone l 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: Monotone l
-- GaloisConnection.upperBounds_l_image
theorem upperBounds_l_image (gc : GaloisConnection l u) (s : Set α) :
    upperBounds (l '' s) = u ⁻¹' upperBounds s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (s : Set α)
Goal: upperBounds (l '' s) = u ⁻¹' upperBounds s
-- GaloisConnection.lowerBounds_u_image
theorem lowerBounds_u_image (gc : GaloisConnection l u) (s : Set β) :
    lowerBounds (u '' s) = l ⁻¹' lowerBounds s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (s : Set β)
Goal: lowerBounds (u '' s) = l ⁻¹' lowerBounds s
-- GaloisConnection.bddAbove_l_image
theorem bddAbove_l_image {s : Set α} : BddAbove (l '' s) ↔ BddAbove s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {s : Set α}
Goal: BddAbove (l '' s) ↔ BddAbove s
-- GaloisConnection.bddBelow_u_image
theorem bddBelow_u_image {s : Set β} : BddBelow (u '' s) ↔ BddBelow s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {s : Set β}
Goal: BddBelow (u '' s) ↔ BddBelow s
-- GaloisConnection.isLUB_l_image
theorem isLUB_l_image {s : Set α} {a : α} (h : IsLUB s a) : IsLUB (l '' s) (l a) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {s : Set α} {a : α} (h : IsLUB s a)
Goal: IsLUB (l '' s) (l a)
-- GaloisConnection.isGLB_u_image
theorem isGLB_u_image {s : Set β} {b : β} (h : IsGLB s b) : IsGLB (u '' s) (u b) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {s : Set β} {b : β} (h : IsGLB s b)
Goal: IsGLB (u '' s) (u b)
-- GaloisConnection.isLeast_l
theorem isLeast_l {a : α} : IsLeast { b | a ≤ u b } (l a) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {a : α}
Goal: IsLeast {b | a ≤ u b} (l a)
-- GaloisConnection.isGreatest_u
theorem isGreatest_u {b : β} : IsGreatest { a | l a ≤ b } (u b) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {b : β}
Goal: IsGreatest {a | l a ≤ b} (u b)
-- GaloisConnection.isGLB_l
theorem isGLB_l {a : α} : IsGLB { b | a ≤ u b } (l a) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {a : α}
Goal: IsGLB {b | a ≤ u b} (l a)
-- GaloisConnection.isLUB_u
theorem isLUB_u {b : β} : IsLUB { a | l a ≤ b } (u b) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {b : β}
Goal: IsLUB {a | l a ≤ b} (u b)
-- GaloisConnection.le_u_l_trans
theorem le_u_l_trans {x y z : α} (hxy : x ≤ u (l y)) (hyz : y ≤ u (l z)) : x ≤ u (l z) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {x y z : α} (hxy : x ≤ u (l y)) (hyz : y ≤ u (l z))
Goal: x ≤ u (l z)
-- GaloisConnection.l_u_le_trans
theorem l_u_le_trans {x y z : β} (hxy : l (u x) ≤ y) (hyz : l (u y) ≤ z) : l (u x) ≤ z 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {x y z : β} (hxy : l (u x) ≤ y) (hyz : l (u y) ≤ z)
Goal: l (u x) ≤ z
-- GaloisConnection.u_l_u_eq_u
theorem u_l_u_eq_u (b : β) : u (l (u b)) = u b 
Arguments: {α : Type u} {β : Type v} [PartialOrder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (b : β)
Goal: u (l (u b)) = u b
-- GaloisConnection.u_l_u_eq_u'
theorem u_l_u_eq_u' : u ∘ l ∘ u = u 
Arguments: {α : Type u} {β : Type v} [PartialOrder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: u ∘ l ∘ u = u
-- GaloisConnection.u_unique
theorem u_unique {l' : α → β} {u' : β → α} (gc' : GaloisConnection l' u') (hl : ∀ a, l a = l' a)
    {b : β} : u b = u' b 
Arguments: {α : Type u} {β : Type v} [PartialOrder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {l' : α → β} {u' : β → α} (gc' : GaloisConnection l' u') (hl : ∀ (a : α), l a = l' a) {b : β}
Goal: u b = u' b
-- GaloisConnection.exists_eq_u
theorem exists_eq_u (a : α) : (∃ b : β, a = u b) ↔ a = u (l a) 
Arguments: {α : Type u} {β : Type v} [PartialOrder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (a : α)
Goal: (∃ b, a = u b) ↔ a = u (l a)
-- GaloisConnection.u_eq
theorem u_eq (gc : GaloisConnection l u) {z : α} {y : β} : u y = z ↔ ∀ x, x ≤ z ↔ l x ≤ y 
Arguments: {α : Type u} {β : Type v} [PartialOrder α] [Preorder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {z : α} {y : β}
Goal: u y = z ↔ ∀ (x : α), x ≤ z ↔ l x ≤ y
-- GaloisConnection.l_u_l_eq_l
theorem l_u_l_eq_l (a : α) : l (u (l a)) = l a 
Arguments: {α : Type u} {β : Type v} [Preorder α] [PartialOrder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (a : α)
Goal: l (u (l a)) = l a
-- GaloisConnection.l_u_l_eq_l'
theorem l_u_l_eq_l' : l ∘ u ∘ l = l 
Arguments: {α : Type u} {β : Type v} [Preorder α] [PartialOrder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: l ∘ u ∘ l = l
-- GaloisConnection.l_unique
theorem l_unique {l' : α → β} {u' : β → α} (gc' : GaloisConnection l' u') (hu : ∀ b, u b = u' b)
    {a : α} : l a = l' a 
Arguments: {α : Type u} {β : Type v} [Preorder α] [PartialOrder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {l' : α → β} {u' : β → α} (gc' : GaloisConnection l' u') (hu : ∀ (b : β), u b = u' b) {a : α}
Goal: l a = l' a
-- GaloisConnection.exists_eq_l
theorem exists_eq_l (b : β) : (∃ a : α, b = l a) ↔ b = l (u b) 
Arguments: {α : Type u} {β : Type v} [Preorder α] [PartialOrder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) (b : β)
Goal: (∃ a, b = l a) ↔ b = l (u b)
-- GaloisConnection.l_eq
theorem l_eq {x : α} {z : β} : l x = z ↔ ∀ y, z ≤ y ↔ x ≤ u y 
Arguments: {α : Type u} {β : Type v} [Preorder α] [PartialOrder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {x : α} {z : β}
Goal: l x = z ↔ ∀ (y : β), z ≤ y ↔ x ≤ u y
-- GaloisConnection.u_eq_top
theorem u_eq_top {l : α → β} {u : β → α} (gc : GaloisConnection l u) {x} : u x = ⊤ ↔ l ⊤ ≤ x 
Arguments: {α : Type u} {β : Type v} [PartialOrder α] [Preorder β] [OrderTop α] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {x : β}
Goal: u x = ⊤ ↔ l ⊤ ≤ x
-- GaloisConnection.u_top
theorem u_top [OrderTop β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) : u ⊤ = ⊤ 
Arguments: {α : Type u} {β : Type v} [PartialOrder α] [Preorder β] [OrderTop α] [OrderTop β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: u ⊤ = ⊤
-- GaloisConnection.l_eq_bot
theorem l_eq_bot {l : α → β} {u : β → α} (gc : GaloisConnection l u) {x} : l x = ⊥ ↔ x ≤ u ⊥ 
Arguments: {α : Type u} {β : Type v} [Preorder α] [PartialOrder β] [OrderBot β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {x : α}
Goal: l x = ⊥ ↔ x ≤ u ⊥
-- GaloisConnection.l_bot
theorem l_bot [OrderBot α] {l : α → β} {u : β → α} (gc : GaloisConnection l u) : l ⊥ = ⊥ 
Arguments: {α : Type u} {β : Type v} [Preorder α] [PartialOrder β] [OrderBot β] [OrderBot α] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: l ⊥ = ⊥
-- GaloisConnection.l_sup
theorem l_sup : l (a₁ ⊔ a₂) = l a₁ ⊔ l a₂ 
Arguments: {α : Type u} {β : Type v} {a₁ a₂ : α} [SemilatticeSup α] [SemilatticeSup β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: l (a₁ ⊔ a₂) = l a₁ ⊔ l a₂
-- GaloisConnection.u_inf
theorem u_inf : u (b₁ ⊓ b₂) = u b₁ ⊓ u b₂ 
Arguments: {α : Type u} {β : Type v} {b₁ b₂ : β} [SemilatticeInf α] [SemilatticeInf β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: u (b₁ ⊓ b₂) = u b₁ ⊓ u b₂
-- GaloisConnection.l_iSup
theorem l_iSup (gc : GaloisConnection l u) {f : ι → α} : l (iSup f) = ⨆ i, l (f i) 
Arguments: {α : Type u} {β : Type v} {ι : Sort x} [CompleteLattice α] [CompleteLattice β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {f : ι → α}
Goal: l (iSup f) = ⨆ i, l (f i)
-- GaloisConnection.l_iSup₂
theorem l_iSup₂ (gc : GaloisConnection l u) {f : ∀ i, κ i → α} :
    l (⨆ (i) (j), f i j) = ⨆ (i) (j), l (f i j) 
Arguments: {α : Type u} {β : Type v} {ι : Sort x} {κ : ι → Sort u_1} [CompleteLattice α] [CompleteLattice β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {f : (i : ι) → κ i → α}
Goal: l (⨆ i, ⨆ j, f i j) = ⨆ i, ⨆ j, l (f i j)
-- GaloisConnection.u_iInf
theorem u_iInf {f : ι → β} : u (iInf f) = ⨅ i, u (f i) 
Arguments: {α : Type u} {β : Type v} {ι : Sort x} [CompleteLattice α] [CompleteLattice β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {f : ι → β}
Goal: u (iInf f) = ⨅ i, u (f i)
-- GaloisConnection.u_iInf₂
theorem u_iInf₂ {f : ∀ i, κ i → β} : u (⨅ (i) (j), f i j) = ⨅ (i) (j), u (f i j) 
Arguments: {α : Type u} {β : Type v} {ι : Sort x} {κ : ι → Sort u_1} [CompleteLattice α] [CompleteLattice β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {f : (i : ι) → κ i → β}
Goal: u (⨅ i, ⨅ j, f i j) = ⨅ i, ⨅ j, u (f i j)
-- GaloisConnection.l_sSup
theorem l_sSup (gc : GaloisConnection l u) {s : Set α} : l (sSup s) = ⨆ a ∈ s, l a 
Arguments: {α : Type u} {β : Type v} [CompleteLattice α] [CompleteLattice β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {s : Set α}
Goal: l (sSup s) = ⨆ a ∈ s, l a
-- GaloisConnection.u_sInf
theorem u_sInf {s : Set β} : u (sInf s) = ⨅ a ∈ s, u a 
Arguments: {α : Type u} {β : Type v} [CompleteLattice α] [CompleteLattice β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {s : Set β}
Goal: u (sInf s) = ⨅ a ∈ s, u a
-- GaloisConnection.lt_iff_lt
theorem lt_iff_lt {a : α} {b : β} : b < l a ↔ u b < a 
Arguments: {α : Type u} {β : Type v} [LinearOrder α] [LinearOrder β] {l : α → β} {u : β → α} (gc : GaloisConnection l u) {a : α} {b : β}
Goal: b < l a ↔ u b < a
-- GaloisConnection.id
protected theorem id [pα : Preorder α] : @GaloisConnection α α pα pα id id 
Arguments: {α : Type u} [pα : Preorder α]
Goal: GaloisConnection id id
-- GaloisConnection.compose
protected theorem compose [Preorder α] [Preorder β] [Preorder γ] {l1 : α → β} {u1 : β → α}
    {l2 : β → γ} {u2 : γ → β} (gc1 : GaloisConnection l1 u1) (gc2 : GaloisConnection l2 u2) :
    GaloisConnection (l2 ∘ l1) (u1 ∘ u2) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [Preorder α] [Preorder β] [Preorder γ] {l1 : α → β} {u1 : β → α} {l2 : β → γ} {u2 : γ → β} (gc1 : GaloisConnection l1 u1) (gc2 : GaloisConnection l2 u2)
Goal: GaloisConnection (l2 ∘ l1) (u1 ∘ u2)
-- GaloisConnection.dfun
protected theorem dfun {ι : Type u} {α : ι → Type v} {β : ι → Type w} [∀ i, Preorder (α i)]
    [∀ i, Preorder (β i)] (l : ∀ i, α i → β i) (u : ∀ i, β i → α i)
    (gc : ∀ i, GaloisConnection (l i) (u i)) :
    GaloisConnection (fun (a : ∀ i, α i) i => l i (a i)) fun b i => u i (b i) 
Arguments: {ι : Type u} {α : ι → Type v} {β : ι → Type w} [(i : ι) → Preorder (α i)] [(i : ι) → Preorder (β i)] (l : (i : ι) → α i → β i) (u : (i : ι) → β i → α i) (gc : ∀ (i : ι), GaloisConnection (l i) (u i))
Goal: GaloisConnection (fun a i => l i (a i)) fun b i => u i (b i)
-- GaloisConnection.compl
protected theorem compl [BooleanAlgebra α] [BooleanAlgebra β] {l : α → β} {u : β → α}
    (gc : GaloisConnection l u) :
    GaloisConnection (compl ∘ u ∘ compl) (compl ∘ l ∘ compl) 
Arguments: {α : Type u} {β : Type v} [BooleanAlgebra α] [BooleanAlgebra β] {l : α → β} {u : β → α} (gc : GaloisConnection l u)
Goal: GaloisConnection (compl ∘ u ∘ compl) (compl ∘ l ∘ compl)
-- GaloisConnection.l_comm_of_u_comm
theorem l_comm_of_u_comm {X : Type*} [Preorder X] {Y : Type*} [Preorder Y] {Z : Type*}
    [Preorder Z] {W : Type*} [PartialOrder W] {lYX : X → Y} {uXY : Y → X}
    (hXY : GaloisConnection lYX uXY) {lWZ : Z → W} {uZW : W → Z} (hZW : GaloisConnection lWZ uZW)
    {lWY : Y → W} {uYW : W → Y} (hWY : GaloisConnection lWY uYW) {lZX : X → Z} {uXZ : Z → X}
    (hXZ : GaloisConnection lZX uXZ) (h : ∀ w, uXZ (uZW w) = uXY (uYW w)) {x : X} :
    lWZ (lZX x) = lWY (lYX x) 
Arguments: {X : Type u_2} [Preorder X] {Y : Type u_3} [Preorder Y] {Z : Type u_4} [Preorder Z] {W : Type u_5} [PartialOrder W] {lYX : X → Y} {uXY : Y → X} (hXY : GaloisConnection lYX uXY) {lWZ : Z → W} {uZW : W → Z} (hZW : GaloisConnection lWZ uZW) {lWY : Y → W} {uYW : W → Y} (hWY : GaloisConnection lWY uYW) {lZX : X → Z} {uXZ : Z → X} (hXZ : GaloisConnection lZX uXZ) (h : ∀ (w : W), uXZ (uZW w) = uXY (uYW w)) {x : X}
Goal: lWZ (lZX x) = lWY (lYX x)
-- GaloisConnection.u_comm_of_l_comm
theorem u_comm_of_l_comm {X : Type*} [PartialOrder X] {Y : Type*} [Preorder Y] {Z : Type*}
    [Preorder Z] {W : Type*} [Preorder W] {lYX : X → Y} {uXY : Y → X}
    (hXY : GaloisConnection lYX uXY) {lWZ : Z → W} {uZW : W → Z} (hZW : GaloisConnection lWZ uZW)
    {lWY : Y → W} {uYW : W → Y} (hWY : GaloisConnection lWY uYW) {lZX : X → Z} {uXZ : Z → X}
    (hXZ : GaloisConnection lZX uXZ) (h : ∀ x, lWZ (lZX x) = lWY (lYX x)) {w : W} :
    uXZ (uZW w) = uXY (uYW w) 
Arguments: {X : Type u_2} [PartialOrder X] {Y : Type u_3} [Preorder Y] {Z : Type u_4} [Preorder Z] {W : Type u_5} [Preorder W] {lYX : X → Y} {uXY : Y → X} (hXY : GaloisConnection lYX uXY) {lWZ : Z → W} {uZW : W → Z} (hZW : GaloisConnection lWZ uZW) {lWY : Y → W} {uYW : W → Y} (hWY : GaloisConnection lWY uYW) {lZX : X → Z} {uXZ : Z → X} (hXZ : GaloisConnection lZX uXZ) (h : ∀ (x : X), lWZ (lZX x) = lWY (lYX x)) {w : W}
Goal: uXZ (uZW w) = uXY (uYW w)
-- GaloisConnection.l_comm_iff_u_comm
theorem l_comm_iff_u_comm {X : Type*} [PartialOrder X] {Y : Type*} [Preorder Y] {Z : Type*}
    [Preorder Z] {W : Type*} [PartialOrder W] {lYX : X → Y} {uXY : Y → X}
    (hXY : GaloisConnection lYX uXY) {lWZ : Z → W} {uZW : W → Z} (hZW : GaloisConnection lWZ uZW)
    {lWY : Y → W} {uYW : W → Y} (hWY : GaloisConnection lWY uYW) {lZX : X → Z} {uXZ : Z → X}
    (hXZ : GaloisConnection lZX uXZ) :
    (∀ w : W, uXZ (uZW w) = uXY (uYW w)) ↔ ∀ x : X, lWZ (lZX x) = lWY (lYX x) 
Arguments: {X : Type u_2} [PartialOrder X] {Y : Type u_3} [Preorder Y] {Z : Type u_4} [Preorder Z] {W : Type u_5} [PartialOrder W] {lYX : X → Y} {uXY : Y → X} (hXY : GaloisConnection lYX uXY) {lWZ : Z → W} {uZW : W → Z} (hZW : GaloisConnection lWZ uZW) {lWY : Y → W} {uYW : W → Y} (hWY : GaloisConnection lWY uYW) {lZX : X → Z} {uXZ : Z → X} (hXZ : GaloisConnection lZX uXZ)
Goal: (∀ (w : W), uXZ (uZW w) = uXY (uYW w)) ↔ ∀ (x : X), lWZ (lZX x) = lWY (lYX x)
-- gc_sSup_Iic
theorem gc_sSup_Iic [CompleteSemilatticeSup α] :
    GaloisConnection (sSup : Set α → α) (Iic : α → Set α) 
Arguments: {α : Type u} [CompleteSemilatticeSup α]
Goal: GaloisConnection sSup Set.Iic
-- gc_Ici_sInf
theorem gc_Ici_sInf [CompleteSemilatticeInf α] :
    GaloisConnection (toDual ∘ Ici : α → (Set α)ᵒᵈ) (sInf ∘ ofDual : (Set α)ᵒᵈ → α) 
Arguments: {α : Type u} [CompleteSemilatticeInf α]
Goal: GaloisConnection (⇑OrderDual.toDual ∘ Set.Ici) (sInf ∘ ⇑OrderDual.ofDual)
-- sSup_image2_eq_sSup_sSup
theorem sSup_image2_eq_sSup_sSup (h₁ : ∀ b, GaloisConnection (swap l b) (u₁ b))
    (h₂ : ∀ a, GaloisConnection (l a) (u₂ a)) : sSup (image2 l s t) = l (sSup s) (sSup t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {l : α → β → γ} {u₁ : β → γ → α} {u₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (Function.swap l b) (u₁ b)) (h₂ : ∀ (a : α), GaloisConnection (l a) (u₂ a))
Goal: sSup (Set.image2 l s t) = l (sSup s) (sSup t)
-- sSup_image2_eq_sSup_sInf
theorem sSup_image2_eq_sSup_sInf (h₁ : ∀ b, GaloisConnection (swap l b) (u₁ b))
    (h₂ : ∀ a, GaloisConnection (l a ∘ ofDual) (toDual ∘ u₂ a)) :
    sSup (image2 l s t) = l (sSup s) (sInf t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {l : α → β → γ} {u₁ : β → γ → α} {u₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (Function.swap l b) (u₁ b)) (h₂ : ∀ (a : α), GaloisConnection (l a ∘ ⇑OrderDual.ofDual) (⇑OrderDual.toDual ∘ u₂ a))
Goal: sSup (Set.image2 l s t) = l (sSup s) (sInf t)
-- sSup_image2_eq_sInf_sSup
theorem sSup_image2_eq_sInf_sSup (h₁ : ∀ b, GaloisConnection (swap l b ∘ ofDual) (toDual ∘ u₁ b))
    (h₂ : ∀ a, GaloisConnection (l a) (u₂ a)) : sSup (image2 l s t) = l (sInf s) (sSup t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {l : α → β → γ} {u₁ : β → γ → α} {u₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (Function.swap l b ∘ ⇑OrderDual.ofDual) (⇑OrderDual.toDual ∘ u₁ b)) (h₂ : ∀ (a : α), GaloisConnection (l a) (u₂ a))
Goal: sSup (Set.image2 l s t) = l (sInf s) (sSup t)
-- sSup_image2_eq_sInf_sInf
theorem sSup_image2_eq_sInf_sInf (h₁ : ∀ b, GaloisConnection (swap l b ∘ ofDual) (toDual ∘ u₁ b))
    (h₂ : ∀ a, GaloisConnection (l a ∘ ofDual) (toDual ∘ u₂ a)) :
    sSup (image2 l s t) = l (sInf s) (sInf t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {l : α → β → γ} {u₁ : β → γ → α} {u₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (Function.swap l b ∘ ⇑OrderDual.ofDual) (⇑OrderDual.toDual ∘ u₁ b)) (h₂ : ∀ (a : α), GaloisConnection (l a ∘ ⇑OrderDual.ofDual) (⇑OrderDual.toDual ∘ u₂ a))
Goal: sSup (Set.image2 l s t) = l (sInf s) (sInf t)
-- sInf_image2_eq_sInf_sInf
theorem sInf_image2_eq_sInf_sInf (h₁ : ∀ b, GaloisConnection (l₁ b) (swap u b))
    (h₂ : ∀ a, GaloisConnection (l₂ a) (u a)) : sInf (image2 u s t) = u (sInf s) (sInf t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {u : α → β → γ} {l₁ : β → γ → α} {l₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (l₁ b) (Function.swap u b)) (h₂ : ∀ (a : α), GaloisConnection (l₂ a) (u a))
Goal: sInf (Set.image2 u s t) = u (sInf s) (sInf t)
-- sInf_image2_eq_sInf_sSup
theorem sInf_image2_eq_sInf_sSup (h₁ : ∀ b, GaloisConnection (l₁ b) (swap u b))
    (h₂ : ∀ a, GaloisConnection (toDual ∘ l₂ a) (u a ∘ ofDual)) :
    sInf (image2 u s t) = u (sInf s) (sSup t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {u : α → β → γ} {l₁ : β → γ → α} {l₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (l₁ b) (Function.swap u b)) (h₂ : ∀ (a : α), GaloisConnection (⇑OrderDual.toDual ∘ l₂ a) (u a ∘ ⇑OrderDual.ofDual))
Goal: sInf (Set.image2 u s t) = u (sInf s) (sSup t)
-- sInf_image2_eq_sSup_sInf
theorem sInf_image2_eq_sSup_sInf (h₁ : ∀ b, GaloisConnection (toDual ∘ l₁ b) (swap u b ∘ ofDual))
    (h₂ : ∀ a, GaloisConnection (l₂ a) (u a)) : sInf (image2 u s t) = u (sSup s) (sInf t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {u : α → β → γ} {l₁ : β → γ → α} {l₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (⇑OrderDual.toDual ∘ l₁ b) (Function.swap u b ∘ ⇑OrderDual.ofDual)) (h₂ : ∀ (a : α), GaloisConnection (l₂ a) (u a))
Goal: sInf (Set.image2 u s t) = u (sSup s) (sInf t)
-- sInf_image2_eq_sSup_sSup
theorem sInf_image2_eq_sSup_sSup (h₁ : ∀ b, GaloisConnection (toDual ∘ l₁ b) (swap u b ∘ ofDual))
    (h₂ : ∀ a, GaloisConnection (toDual ∘ l₂ a) (u a ∘ ofDual)) :
    sInf (image2 u s t) = u (sSup s) (sSup t) 
Arguments: {α : Type u} {β : Type v} {γ : Type w} [CompleteLattice α] [CompleteLattice β] [CompleteLattice γ] {s : Set α} {t : Set β} {u : α → β → γ} {l₁ : β → γ → α} {l₂ : α → γ → β} (h₁ : ∀ (b : β), GaloisConnection (⇑OrderDual.toDual ∘ l₁ b) (Function.swap u b ∘ ⇑OrderDual.ofDual)) (h₂ : ∀ (a : α), GaloisConnection (⇑OrderDual.toDual ∘ l₂ a) (u a ∘ ⇑OrderDual.ofDual))
Goal: sInf (Set.image2 u s t) = u (sSup s) (sSup t)
-- OrderIso.bddAbove_image
@[simp]
theorem bddAbove_image (e : α ≃o β) {s : Set α} : BddAbove (e '' s) ↔ BddAbove s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] (e : α ≃o β) {s : Set α}
Goal: BddAbove (⇑e '' s) ↔ BddAbove s
-- OrderIso.bddBelow_image
@[simp]
theorem bddBelow_image (e : α ≃o β) {s : Set α} : BddBelow (e '' s) ↔ BddBelow s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] (e : α ≃o β) {s : Set α}
Goal: BddBelow (⇑e '' s) ↔ BddBelow s
-- OrderIso.bddAbove_preimage
@[simp]
theorem bddAbove_preimage (e : α ≃o β) {s : Set β} : BddAbove (e ⁻¹' s) ↔ BddAbove s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] (e : α ≃o β) {s : Set β}
Goal: BddAbove (⇑e ⁻¹' s) ↔ BddAbove s
-- OrderIso.bddBelow_preimage
@[simp]
theorem bddBelow_preimage (e : α ≃o β) {s : Set β} : BddBelow (e ⁻¹' s) ↔ BddBelow s 
Arguments: {α : Type u} {β : Type v} [Preorder α] [Preorder β] (e : α ≃o β) {s : Set β}
Goal: BddBelow (⇑e ⁻¹' s) ↔ BddBelow s
-- Nat.galoisConnection_mul_div
theorem galoisConnection_mul_div {k : ℕ} (h : 0 < k) :
    GaloisConnection (fun n => n * k) fun n => n / k 
Arguments: {k : ℕ} (h : 0 < k)
Goal: GaloisConnection (fun n => n * k) fun n => n / k
-- GaloisInsertion.choice_eq
structure GaloisInsertion {α β : Type*} [Preorder α] [Preorder β] (l : α → β) (u : β → α) where
    choice : ∀ x : α, u (l x) ≤ x → β
    gc : GaloisConnection l u
    le_l_u : ∀ x, x ≤ l (u x)
    choice_eq : ∀ a h, choice a h = l a
Arguments: {α : Type u_2} {β : Type u_3} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (self : GaloisInsertion l u) (a : α) (h : u (l a) ≤ a)
Goal: self.choice a h = l a
-- GaloisInsertion.gc
structure GaloisInsertion {α β : Type*} [Preorder α] [Preorder β] (l : α → β) (u : β → α) where
    choice : ∀ x : α, u (l x) ≤ x → β
    gc : GaloisConnection l u
    le_l_u : ∀ x, x ≤ l (u x)
    choice_eq : ∀ a h, choice a h = l a
Arguments: {α : Type u_2} {β : Type u_3} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (self : GaloisInsertion l u)
Goal: GaloisConnection l u
-- GaloisInsertion.le_l_u
structure GaloisInsertion {α β : Type*} [Preorder α] [Preorder β] (l : α → β) (u : β → α) where
    choice : ∀ x : α, u (l x) ≤ x → β
    gc : GaloisConnection l u
    le_l_u : ∀ x, x ≤ l (u x)
    choice_eq : ∀ a h, choice a h = l a
Arguments: {α : Type u_2} {β : Type u_3} [Preorder α] [Preorder β] {l : α → β} {u : β → α} (self : GaloisInsertion l u) (x : β)
Goal: x ≤ l (u x)
-- GaloisInsertion.l_u_eq
theorem l_u_eq [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u) (b : β) : l (u b) = b 
Arguments: {α : Type u} {β : Type v} {l : α → β} {u : β → α} [Preorder α] [PartialOrder β] (gi : GaloisInsertion l u) (b : β)
Goal: l (u b) = b