Theorem: nullMeasurableSet_region_between_oc
File: Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean

tactic: refine NullMeasurableSet.inter
        (s_mble.preimage quasiMeasurePreserving_fst) (NullMeasurableSet.inter ?_ ?_)
state_before: α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet {p | p.1 ∈ s ∧ p.2 ∈ Ioc (f p.1) (g p.1)} (μ.prod volume)
state_after: case refine_1
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet (fun p => f p.1 < p.2) (μ.prod volume)

case refine_2
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet (fun p => p.2 ≤ g p.1) (μ.prod volume)

tactic: exact nullMeasurableSet_lt (AEMeasurable.fst f_mble) measurable_snd.aemeasurable
state_before: case refine_1
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet (fun p => f p.1 < p.2) (μ.prod volume)
state_after: no goals

tactic: change NullMeasurableSet {p : α × ℝ | p.snd ≤ g p.fst} (μ.prod volume)
state_before: case refine_2
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet (fun p => p.2 ≤ g p.1) (μ.prod volume)
state_after: case refine_2
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet {p | p.2 ≤ g p.1} (μ.prod volume)

tactic: rw [show {p : α × ℝ | p.snd ≤ g p.fst} = {p : α × ℝ | g p.fst < p.snd}ᶜ by
      ext p
      simp only [mem_setOf_eq, mem_compl_iff, not_lt]]
state_before: case refine_2
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet {p | p.2 ≤ g p.1} (μ.prod volume)
state_after: case refine_2
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet {p | g p.1 < p.2}ᶜ (μ.prod volume)

tactic: exact (nullMeasurableSet_lt (AEMeasurable.fst g_mble) measurable_snd.aemeasurable).compl
state_before: case refine_2
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ NullMeasurableSet {p | g p.1 < p.2}ᶜ (μ.prod volume)
state_after: no goals

tactic: ext p
state_before: α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
⊢ {p | p.2 ≤ g p.1} = {p | g p.1 < p.2}ᶜ
state_after: case h
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
p : α × ℝ
⊢ p ∈ {p | p.2 ≤ g p.1} ↔ p ∈ {p | g p.1 < p.2}ᶜ

tactic: simp only [mem_setOf_eq, mem_compl_iff, not_lt]
state_before: case h
α : Type u_1
inst✝ : MeasurableSpace α
μ✝ : Measure α
f✝ g✝ : α → ℝ
s✝ : Set α
μ : Measure α
f g : α → ℝ
f_mble : AEMeasurable f μ
g_mble : AEMeasurable g μ
s : Set α
s_mble : NullMeasurableSet s μ
p : α × ℝ
⊢ p ∈ {p | p.2 ≤ g p.1} ↔ p ∈ {p | g p.1 < p.2}ᶜ
state_after: no goals