# On High-order Interpolation and Non-linear Interpolation

Defining a mechanism to represent polynomials in OtVar’s mechanism is possible, if one axis value could be assigned to multiple axes. From the equation (2) in the previous article, if in `v` we have `v`{`0`}=`v`{`1`}=`t`, then we could define a region `m` that satisfies `W`(`m`,`v`)=`t`{`2`} by making the axis region `m`{`0`} and `m`{`1`} as axis regions that peaked at 1. Terms with higher degree could also be constructed in the similar manner.

Actually, with duplicate axis, we could define a **ring** for variable quantities, since the multiplication:

{(x̂⋅ŷ)(v)} | {=x̄⋅ȳ} | {(1)} |

{} | {+x̄⋅{{∑}m∈y}}D{y}[m]W(m,v)} | {(2)} |

{} | {+ȳ⋅{{∑}m∈x}}D{x}[m]W(m,v)} | {(3)} |

{} | {+{{∑}m{x}∈x}} {{∑}m{y}∈y}}D{x}[m{x}]D{y}[m{y}]W(m{x},v)W(m{y},v)} | {(4)} |

Part (1), (2), (3) are already representable in OtVar, and in the part (4), we could use duplicate axes to ensure that for any region pair `m`{`x`} and `m`{`y`}, their axis index set does not overlap, which made the product `W`(`m`{`x`},`v`)`W`(`m`{`y`},`v`) representable in the OtVar form.

If OtVar could further extended to support non-linear variation, the simplest change is to add a *degree* parameter to each region, which changes the region-weighting function into:

{W′(m,v)={{∏}a∈m[a],v[a]){d[m[a]]}} | {(5)} |

where `d`[`m`[`a`]] denotes the degree parameter of axis region `m`[`a`].