Regular-vine structures by nested path attachment #
A new variable is attached along a path through the existing vine's nested coordinate clusters. Each new higher-tree edge shares an immediate parent with its two endpoints: the proximity condition is built into the construction. Always taking the left child gives a C-vine; always taking the right child gives a D-vine. Mixed paths give other regular vines.
Equations
- One or more equations did not get rendered due to their size.
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq ProbabilityTheory.Copula.Vine.Tree.empty ProbabilityTheory.Copula.Vine.Tree.empty = isTrue ⋯
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq ProbabilityTheory.Copula.Vine.Tree.empty (ProbabilityTheory.Copula.Vine.Tree.leaf i) = isFalse ⋯
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq ProbabilityTheory.Copula.Vine.Tree.empty (ProbabilityTheory.Copula.Vine.Tree.join a b conditioning left right) = isFalse ⋯
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq (ProbabilityTheory.Copula.Vine.Tree.leaf i) ProbabilityTheory.Copula.Vine.Tree.empty = isFalse ⋯
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq (ProbabilityTheory.Copula.Vine.Tree.leaf a) (ProbabilityTheory.Copula.Vine.Tree.leaf b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq (ProbabilityTheory.Copula.Vine.Tree.leaf i) (ProbabilityTheory.Copula.Vine.Tree.join a b conditioning left right) = isFalse ⋯
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq (ProbabilityTheory.Copula.Vine.Tree.join a b conditioning left right) ProbabilityTheory.Copula.Vine.Tree.empty = isFalse ⋯
- ProbabilityTheory.Copula.Vine.instDecidableEqTree.decEq (ProbabilityTheory.Copula.Vine.Tree.join a b conditioning left right) (ProbabilityTheory.Copula.Vine.Tree.leaf i) = isFalse ⋯
Instances For
Coordinates of a cluster.
Equations
- ProbabilityTheory.Copula.Vine.Tree.empty.vars = ∅
- (ProbabilityTheory.Copula.Vine.Tree.leaf i).vars = {i}
- (ProbabilityTheory.Copula.Vine.Tree.join a b s left right).vars = insert a (insert b s)
Instances For
Well-formed recursive regular-vine clusters.
- empty {d : ℕ} : Tree.empty.Valid
- leaf {d : ℕ} (i : Fin d) : (Tree.leaf i).Valid
- join {d : ℕ} {a b : Fin d} {s : Finset (Fin d)} {l r : Tree d} (left : l.Valid) (right : r.Valid) (left_vars : l.vars = insert a s) (right_vars : r.vars = insert b s) (left_notMem : a ∉ s) (right_notMem : b ∉ s) (distinct : a ≠ b) (proximity : l.Proximity r s) : (Tree.join a b s l r).Valid
Instances For
Attach a fresh variable along a path (false = left, true = right).
Missing choices default to left; choices after reaching a leaf are unused.
Equations
- One or more equations did not get rendered due to their size.
- ProbabilityTheory.Copula.Vine.Tree.empty.graft x✝¹ x✝ = ProbabilityTheory.Copula.Vine.Tree.leaf x✝¹
Instances For
Build a vine by adding a list of distinct variables from right to left.
Equations
- ProbabilityTheory.Copula.Vine.Tree.ofList paths [] = ProbabilityTheory.Copula.Vine.Tree.empty
- ProbabilityTheory.Copula.Vine.Tree.ofList paths (a :: xs) = (ProbabilityTheory.Copula.Vine.Tree.ofList paths xs).graft a (paths a)
Instances For
All labelled pair-copula edges; duplicate ancestral references are removed.
Equations
Instances For
A regular-vine structure in path-attachment form. The list is an elimination order: construction adds its variables from right to left.
Each coordinate occurs exactly once.
- nodup : self.eliminationOrder.Nodup
Left/right choices for attaching a variable to the earlier clusters.
Instances For
Specify the order in which variables are added, together with their attachment paths.
Equations
Instances For
The C-vine with the given root order.
Equations
- ProbabilityTheory.Copula.RVineStructure.cVine order = ProbabilityTheory.Copula.RVineStructure.ofOrder order fun (x : Fin d) => []
Instances For
The D-vine with the given chain order.
Equations
- ProbabilityTheory.Copula.RVineStructure.dVine order = ProbabilityTheory.Copula.RVineStructure.ofOrder order fun (x : Fin d) => List.replicate d true
Instances For
The labelled ancestral tree, including all conditioned and conditioning sets.
Equations
Instances For
Every structure produced by the API satisfies the recursive proximity condition.