Commit 852076a9 authored by Conor McCoid's avatar Conor McCoid
Browse files

Tetra: draft of proof for higher dimensions, transform for higher dimensions

parent 504513ff
......@@ -971,7 +971,11 @@ Each simplex has $n+1$ vertices.
Each pair of vertices on a given simplex defines an edge, each triple a plane, and so on.
As before we align one of the simplices to the reference simplex with vertices at the origin and $\vec{e}_\gamma$ for $\gamma=1,\dots,n$.
(nb: work out transformation)
The vertices of $X$ are found by solving the system
\begin{bmatrix} \vec{v}_1 & \dots & \vec{v}_n \end{bmatrix} \begin{bmatrix} \vec{x}_0 & \dots & \vec{x}_n \end{bmatrix} = \hat{U} - \vec{v}_0 \vec{1}^\top
where $\vec{v}_0$ is the vertex of $V$ mapped to the origin, $\vec{v}_i$ is the vector between $\vec{v}_0$ and the $i$--th vertex of $V$, and the columns of $\hat{U}$ are the vertices of $U$.
A vertex of $X$, $\vec{x}_i$, lies inside $Y$ only if $\vec{x}_i \cdot \vec{e}_\gamma \geq 0$ for all $\gamma$.
It is also necessary that $1 - \vec{x}_i \cdot \vec{1} \geq 0$, where $\vec{1} = \sum \vec{e}_\gamma$.
......@@ -1083,7 +1087,7 @@ Note that the $(n-m)$--face of $Y$ on the intersection of $\Set{P_\gamma}{\gamma
That is, $\vec{h}(J | \Gamma)$ lies on $Y$ if and only if $\vec{h}(J | \Gamma) \cdot \vec{e}_\eta \geq 0$ for all $\eta \notin \Gamma$.
Only the sign of $\vec{h}(J | \Gamma) \cdot \vec{e}_0$ is needed for this determination as the position of $\vec{h}(J | \Gamma)$ is calculated via the other scalar products.
\begin{cor} \label{cor:num}
The numerator of $\vec{h}(J | \Gamma) \cdot \vec{e}_{\eta}$ is shared with the numerators of $\vec{h}(J | \Gamma_j) \cdot \vec{e}_{j}$ for $m$ values of $j$, up to a change in sign, where $\Gamma$ and $\Gamma_j$ have cardinality $m$.
......@@ -1128,6 +1132,21 @@ Outline:
\item Prove each step is consistent with the previous step;
\item Induction.
Each step in the algorithm, with the exception of the change of coordinates, has two components:
first, the signs of two intersections along a given direction are compared, and;
a new intersection is calculated.
A new intersection is only calculated if the signs of the two intersections along that given direction are different.
Thus, the number of intersections is consistent with the results obtained from the previous step in the algorithm.
By Corollary \ref{cor:num} the sign of the numerator of an intersection is shared amongst up to $m+1$ intersections, where $m$ is the number of planes of $Y$ on which each of the intersections sit.
These intersections represent all intersections between a given $m$--face of $X$ and the simplex $Y$.
If this $m$--face of $X$ has less than the maximum number of intersections then the signs of the numerators may be determined directly from the signs of the intersections of the $(m-1)$--faces of $X$ that compose the $m$--face.
Otherwise, the algorithm needs only calculate the sign for one of these numerators and use it for all others on this $m$--face.
In either case, this step of the algorithm is self-consistent.
Each step of the algorithm has been proven to be self-consistent and consistent with the previous step.
By induction, the algorithm as a whole is consistent for any dimension.
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment