The interpretation sends a `flatMap` to the sum of the pieces.
ProvedTypeDensity.lawInterp_flatMaptype-density
The interpretation sends a flatMap to the sum of the pieces.
Preamble
import Definitions.Def_TypeDensity_Basic
import Definitions.Def_TypeDensity_Formula_LawAlgebra
import Mathlib.FieldTheory.RatFunc.Basic
import Mathlib.MeasureTheory.Measure.Haar.Unique
import Mathlib.NumberTheory.ArithmeticFunction.Moebius
import Mathlib.NumberTheory.Padics.PadicIntegers
import Mathlib.RingTheory.IntegralClosure.IntegralRestrict
import Mathlib.RingTheory.MvPowerSeries.Basic
import Mathlib.RingTheory.RamificationInertia.Basic
import Mathlib.Topology.Algebra.Nonarchimedean.AdicTopology
import Mathlib.FieldTheory.Finite.GaloisField
import Mathlib.RingTheory.AdicCompletion.Algebra
import Mathlib.RingTheory.RegularLocalRing.Defs
set_option autoImplicit false
open TypeDensity
open scoped BigOperators ENNReal
variable {S : Type*} [Semiring S] (v : Expr → S)
Formal statement
theorem TypeDensity.lawInterp_flatMap {α : Type} (xs : List α) (g : α → Law) :
lawInterp v (xs.flatMap g) = (xs.map fun u ↦ lawInterp v (g u)).sum := by sorrySource
TypeDensity/Formula/LawAlgebra.lean#L465-L469