Regular-vine copula construction #
Each path attachment preserves the entire previous copula. At every new edge the supplied family couples the two conditional coordinate laws over their shared marginal. Measurability is explicit; the family can depend on all of the conditioning coordinates. Singular conditional laws are allowed.
A pair-copula family for each oriented pair and conditioning set. Only the entries belonging to the chosen vine are used. Each family is evaluated on the conditioning vector padded by zero outside its conditioning set.
Equations
- ProbabilityTheory.Copula.Vine.PairFamilies d = (Fin d → Fin d → Finset (Fin d) → ProbabilityTheory.Copula.Family (Fin d → ↑unitInterval) 2)
Instances For
A realization records the marginal law at every ancestral cluster and proves that each cluster projects to its two immediate parents.
- empty {d : ℕ} : Realization Tree.empty Marginal.empty
- leaf {d : ℕ} (i : Fin d) : Realization (Tree.leaf i) (Marginal.singleton i)
- join {d : ℕ} {a b : Fin d} {s : Finset (Fin d)} {l r : Tree d} {L : Marginal l.vars} {R : Marginal r.vars} (left : Realization l L) (right : Realization r R) (M : Marginal (insert a (insert b s))) (left_map : MeasureTheory.Measure.map (project l.vars) M.toMeasure = L.toMeasure) (right_map : MeasureTheory.Measure.map (project r.vars) M.toMeasure = R.toMeasure) : Realization (Tree.join a b s l r) M
Instances For
The result of adding one variable: its law, its ancestral marginals, and the proof that the previous law is preserved.
- realization : Realization (t.graft a path) self.law
Instances For
Build a path attachment, using a conditional copula at each newly introduced edge.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A law together with its ancestral marginal identities.
- realization : Realization t self.law
Instances For
Construct the probability laws for an ordered list of distinct variables.
Equations
- One or more equations did not get rendered due to their size.
- ProbabilityTheory.Copula.Vine.modelOfList paths families [] x_2 = { law := ProbabilityTheory.Copula.Vine.Marginal.empty, realization := ProbabilityTheory.Copula.Vine.Realization.empty }
Instances For
Adding a variable preserves the complete joint law of all previously added variables.
The compatible probability law at every ancestral node of this vine.
Equations
- S.model families = ProbabilityTheory.Copula.Vine.modelOfList S.paths families S.eliminationOrder ⋯
Instances For
Construct a regular-vine copula from measurable, possibly conditioning-dependent pair-copula families. Uniform marginals follow from conditional gluing.
Instances For
The full copula law is the law at the top of the vine.
A simplified regular vine, with a fixed copula at each edge.
Equations
- S.simplified pairs = S.toCopula fun (a b : Fin d) (s : Finset (Fin d)) => ProbabilityTheory.Copula.Family.const (pairs a b s)
Instances For
A possibly non-simplified C-vine with a prescribed variable order.
Equations
- ProbabilityTheory.Copula.cVine order families = (ProbabilityTheory.Copula.RVineStructure.cVine order).toCopula families
Instances For
A possibly non-simplified D-vine with a prescribed variable order.
Equations
- ProbabilityTheory.Copula.dVine order families = (ProbabilityTheory.Copula.RVineStructure.dVine order).toCopula families