360 likes | 484 Views
u -bases and Bernstein polynomials. reporter: zhu ping. 2008.09.17. 1. u -bases for polynomial systems in one variable Ning Song,Ron Goldman CAGD, in press 2. Division algorithms for Bernstein polynomials Laurent Buse, Ron Goldman CAGD, in press. Ning Song, Ron Goldman
E N D
u-bases and Bernstein polynomials reporter: zhu ping 2008.09.17
1. u-bases for polynomial systems in one variable Ning Song,Ron Goldman CAGD, in press 2. Division algorithms for Bernstein polynomials Laurent Buse, Ron Goldman CAGD, in press
Ning Song, Ron Goldman Rice University, CS, Houston,USA History: Sederberg, Cox, Chen, Zheng Sederberg, Implicitization using moving curves and surfaces.Siggraph 95 Cox, The moving line ideal basis of planar rational curves. CAGD,1998 Zheng, A direct approach to computing the u-basis of planar rational curves, J.Symbolic Compute,2001 U-bases for polynomial systems in one variable
Domestic USTC: Chen and Wang, The u-basis of a planar rational curve-properties and computation. Graphical Models, 2003 Chen and Sederberg, A new implicit representation of a planar rational curve with high order singularity. CAGD,2002 Wang and Chen. Implicitization and parametrization of quadratic surfaces with one simple base point, ISSAC'2008. Chen and Wang, Computing singular points of plane rational curves, Journal of Symbolic Computation, 2008
Definition Properties Generalized algorithm With common factors Rational space curve Contents:
syzygy modele {f1,…,fk} f(t)=(f1(t),…, fk(t)) Vector polynomials p(t)=(p(t),…,pk(t)) such that p.f=p1f1+…+pkfk≡0 syzygy modele space k-1 generators (Cox, 98) LV(p) denotes the leading coefficient and deg(p)=n syzygy module
A set of k-1 vector polynomials u1,…,uk-1 is called a u-basis of the polynomial f1,…,fk or a u-basis of the syzygy module syz(f1,…,fk),if u1,…,uk-1 are a basis of syz(f1,…,fk). That is any l∈syz(f1,…,fk), can be expressed uniquely by l=h1u1+…+hk-1uk-1 where hi are polynomials in t; 2. LV(u1),…,LV(uk-1) are linearly independent. Definition
Theorem 1 u1,…,uk-1 are u-basis for f=(f1,…,fk) with deg(u1) ≤deg(u2) ≤…≤deg(uk-1) and GCD(f1,…,fk)=1. We have: Every l∈syz(f1,…,fk) can be expressed by (1) with deg(hiui) ≤deg(l) If v1,…vk-1 is a set of vector polynomials in syz(f1,…,fk) that are linearly independent with deg(v1) ≤deg(v2) ≤…≤deg(vk), then deg(ui) ≤deg(vi) for i=1,2,…,k-1. If v1,…,vk-1 is another u-basis for f1,…,fk with deg(v1) ≤deg(v2) ≤ …≤deg(vk), then deg(ui)=deg(vi) for i=1,2,…,k-1. Properties of u-bases
4. ui(t0) ≠0 for every parameter value t0. 5. u1(t0),…,uk(t0) are linearly independent for every parameter value t0. 6. The out product of u1,…,uk-1 is equal to c(f1,…,fk) for some non-zero constant c. 7. f(t0)=cS for some constant c and for S=(s1,…,sk) if and only if u1(t0).S=…=uk-1(t0).S=0. 8.
Let u1,…,uk be k-1 polynomials in syz(f1…,fk) with deg(u1) ≤…≤deg(uk-1) and GCD(f1,…,fk)=1. Then u1,…,uk-1 form a u-basis for syz(f1,…,fk) if and only if one of the conditions holds: 1. Every element l∈syz(f1,…,fk) can be expressed as in (1) and u1,…,uk-1 are of the lowest degree. 2. Every element l ∈syz(f1,…,fk) can be expressed as in (1) with deg(hiui) ≤deg(l) for i=1,…,k-1. 3. Every element l ∈syz(f1,…,fk) can be expressed as in (1) and deg(u1)+…+deg(uk-1)=deg(f1,…,fk). 4. The outer product of u1,…,uk-1 is equal to c(f1,…,fk) where c is a constant not equal to zero, and deg(u1)+…+deg(uk-1)=deg(f1,…,fk). Equivalent definition
Algorithm: Input: f=(f1(t),…,fk(t)) with GCD=1 Output: k-1 polynomial for u-bases Step 1: Create the set of vector polynomials {ua,b}: ua,b=(0,…,0, -fb(t),…, fa(t),…,0); Sort {ua,b} by a,b and rename the set {ui} i=1,2,…,s. Step 2: Set mi=LV(ui) and ni=deg(ui), i=1,2,…,s. Step 3: Sort ni so that n1≥n2≥…≥ns and re-index ui,mi. Step 4: Find real numbers a1,a2,…as such that a1m1+a2m2+…+asms=0; and at least two of the terms aimi are not zero. An algorithm to calculate u-bases
Step 5: Choose the lowest integer j such that aj≠0 , update uj by setting If uj≡0, discard uj and set s=s-1; otherwise set mj=LV(uj) and nj=deg(uj). Step 6: If s=k-1, then output the k-1 non-zero polynomials u1,…,uk-1 and stop; otherwise, go to step 3.
Four questions: 1. Point on curve: Given a point P0=(x0,y0,z0,w0) in homogeneous coordinates, determine if the point P lies on the curve P(t) 2. Inversion: Given a point P0=(x0,y0,z0,w0) in homogeneous coordinates on the curve P(t), find the corresponding parameter value to such that P(t0)=cP0 for some constant c. 3. Implicitization: Given a rational space curve P(t), find a low degree implicit representation for this curve. 4. Intersection: Given two rational space curves P(t), ,find the intersection points of P(t) and Application to non-planar curves
Example: • (Cubic curve). • P0=(3,0,2,1) t=1 • P1=(0,0,0,1) • (Quartic curve) • P0=(2,0,-1,1) • P1=(0,1,1,1)
Implicitization: u-bases for P(t): p=(p1(t),p2(t),p3(t),p4(t)); q=(q1(t),q2(t),q3(t),q4(t)); r=(r1(t),r2(t),r3(t),r4(t)); p=p.(x,y,z,w);q=q.(x,y,z,w),r=r.(x,y,z,w); S1(x,y,z,w)=Res(p,q;t); S2(x,y,z,w)=Res(q,r;t); S3(x,y,z,w)=Res(p,r;t) Example:
Example 1. (Cubic curve) P0=(3,0,2,1) 2. (Sextic curve)
Future work: How to eleminate these extraneous points How to generate the lowest degree representation using u-bases?
Authors: Laurent Buse, INRIA Sophia Antipolis , France Ron Goldman, Rice University, USA Problem: operator of Bernstein polynomials. Reason: advantage of Bernstein basis Division algorithms for Bernstein polynomials
Three algorithms: 1. an algorithm for dividing two univariate polynomials 2. an algorithm for calculating the GCD of an arbitrary collection of univariate polynomials 3. an algorithm for computing u-basis for the syzygy module of an arbitrary collection of univariate polynomials. then extended to three or more Bernstein polynomials Contents
Bernstein polynomial: 1. Multiplication by powers of 2. Multiplication by powers of Bernstein bases basics
3. Removing common powers of 4. Removing common powers of 5. Degree elevation
monomial polynomials ↔ Bernstein bases Conversion between monomial and Bernstein bases
Division algorithm for two Bernstein polynomials Given two univariate polynomials f(t) ,g(t) such that degt(t)≤degt(g) How to solve q(t) and r(t) such that g=q.f+r.
Example: g(t)=[2,3/4,1/2,1/4,0]=t4+t, f(t)=[1,0,0,0]=t3.
GCD algorithm Example: g(t)=[0,0,1,0,0,0]=10t3-20t4+10t5, f(t)=[0,3/4,1/2,1/4,0]=t-t4
We will denote the homogenization of any polynomial P(t) ∈R[t] by A u-basis algorithm for an arbirary collection of Bernstein polynomials We denote by the homogenization of fi(t) of degree We set
Example: f1(t)=[1]=1,f2(t)=[1.0]=t, f3(t)=[1,0,0]=t2 Remove common powers of 1-t and get U-basis for f1,f2,f3
GCD algorithm for three or more Bernstein polynomials