Working with valuations Thibaut Verron Johannes Kepler University, - - PowerPoint PPT Presentation

working with valuations
SMART_READER_LITE
LIVE PREVIEW

Working with valuations Thibaut Verron Johannes Kepler University, - - PowerPoint PPT Presentation

Working with valuations Thibaut Verron Johannes Kepler University, Institute for Algebra, Linz, Austria Sminaire Calcul Formel, Limoges 27 fvrier 2020 1 Part 1: Signature Grbner bases over Tate algebras joint work with Xavier Caruso 1


slide-1
SLIDE 1

1

Working with valuations

Thibaut Verron

Johannes Kepler University, Institute for Algebra, Linz, Austria

Séminaire Calcul Formel, Limoges 27 février 2020

slide-2
SLIDE 2

2

Part 1: Signature Gröbner bases over Tate algebras

joint work with Xavier Caruso1 and Tristan Vaccon2

  • 1. Institut de Mathématiques de Bordeaux, Bordeaux, France
  • 2. XLIM, Université de Limoges, Limoges, France

Séminaire Calcul Formel, Limoges 27 février 2020

slide-3
SLIDE 3

3

Precision and Gröbner bases

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.01X − 1

slide-4
SLIDE 4

3

Precision and Gröbner bases

LT(g)

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.01X − 1

f = X 2 100X 10 000 f = X 2 0.01X 3 0.0001X 4 · · ·

◮ The usual way: ◮ It terminates, but... ◮ g ≃ 1, but f mod g ≃ 0 ◮ Another way? ◮

It does not terminate, but...

The sequence of reductions tends to 0 −100Xg −10 000g +X 2g +0.01X 3g · · ·

slide-5
SLIDE 5

3

Precision and Gröbner bases

LT(g)

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.0001X − 1

f = X 2 10 000X 100 000 000 f = X 2 0.0001X 3 0.000 000 01X 4 · · ·

◮ The usual way: ◮ It terminates, but... ◮ g ≃ 1, but f mod g ≃ 0 ◮ Another way? ◮

It does not terminate, but...

The sequence of reductions tends to 0 −10 000Xg −100 000 000g +X 2g +0.0001X 3g · · ·

slide-6
SLIDE 6

3

Precision and Gröbner bases

LT(g)

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.000 001X − 1

f = X 2 1 000 000X 1 000 000 000 000 f = X 2 0.000 001X 3 0.000 000 000 001X 4 · · ·

◮ The usual way: ◮ It terminates, but... ◮ g ≃ 1, but f mod g ≃ 0 ◮ Another way? ◮

It does not terminate, but...

The sequence of reductions tends to 0 −1 000 000Xg −1 000 000 000 000g +X 2g +0.000 001X 3g · · ·

slide-7
SLIDE 7

3

Precision and Gröbner bases

LT(g)

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.01X − 1

f = X 2 100X 10 000 f = X 2 0.01X 3 0.0001X 4 · · ·

◮ The usual way: ◮ It terminates, but... ◮ g ≃ 1, but f mod g ≃ 0 ◮ Another way? ◮

It does not terminate, but...

The sequence of reductions tends to 0 −100Xg −10 000g +X 2g +0.01X 3g · · ·

slide-8
SLIDE 8

3

Precision and Gröbner bases

LT(g)

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.0001X − 1

f = X 2 10 000X 100 000 000 f = X 2 0.0001X 3 0.000 000 01X 4 · · ·

◮ The usual way: ◮ It terminates, but... ◮ g ≃ 1, but f mod g ≃ 0 ◮ Another way? ◮

It does not terminate, but...

The sequence of reductions tends to 0 −10 000Xg −100 000 000g +X 2g +0.0001X 3g · · ·

slide-9
SLIDE 9

3

Precision and Gröbner bases

LT(g)

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.000 001X − 1

f = X 2 1 000 000X 1 000 000 000 000 f = X 2 0.000 001X 3 0.000 000 000 001X 4 · · ·

◮ The usual way: ◮ It terminates, but... ◮ g ≃ 1, but f mod g ≃ 0 ◮ Another way? ◮

It does not terminate, but...

The sequence of reductions tends to 0 −1 000 000Xg −1 000 000 000 000g +X 2g +0.000 001X 3g · · ·

slide-10
SLIDE 10

3

Precision and Gröbner bases

◮ Qestion: in R[X], reduce f = X 2 modulo g = 0.000 001X − 1

f = X 2 1 000 000X 1 000 000 000 000 f = X 2 0.000 001X 3 0.000 000 000 001X 4 · · ·

◮ The usual way: ◮ It terminates, but... ◮ g ≃ 1, but f mod g ≃ 0 ◮ Another way? ◮

It does not terminate, but...

The sequence of reductions tends to 0 −1 000 000Xg −1 000 000 000 000g +X 2g +0.000 001X 3g · · ·

◮ This work: make sense of this process for convergent power series in Zp[[X]]

slide-11
SLIDE 11

4

Valued fields and rings: basic definitions

Valuation: function val : k → Z ∪ {∞} with:

◮ val(a) = ∞ ⇐

⇒ a = 0

◮ val(ab) = val(a) + val(b) ◮ val(a + b) ≥ min(val(a), val(b))

a · b = ab a + b = a + b a + b = a + b

? ? ?

Examples: 1 π a = a3π3 + a4π4 + . . . b = b−3π−3 + b−2π−2 + . . . val(a) = 3 val(b) = −3

slide-12
SLIDE 12

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

slide-13
SLIDE 13

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

◮ Metric and topology defined by “a is small” ⇐

⇒ “val(a) is large”

◮ In a complete valuation ring, a series is convergent iff its general term goes to 0:

n=0 an = a0

slide-14
SLIDE 14

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

◮ Metric and topology defined by “a is small” ⇐

⇒ “val(a) is large”

◮ In a complete valuation ring, a series is convergent iff its general term goes to 0:

1

n=0 an = a0 + a1

slide-15
SLIDE 15

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

◮ Metric and topology defined by “a is small” ⇐

⇒ “val(a) is large”

◮ In a complete valuation ring, a series is convergent iff its general term goes to 0:

2

n=0 an = a0 + a1 + a2

slide-16
SLIDE 16

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

◮ Metric and topology defined by “a is small” ⇐

⇒ “val(a) is large”

◮ In a complete valuation ring, a series is convergent iff its general term goes to 0:

3

n=0 an = a0 + a1 + a2 + a3

slide-17
SLIDE 17

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

◮ Metric and topology defined by “a is small” ⇐

⇒ “val(a) is large”

◮ In a complete valuation ring, a series is convergent iff its general term goes to 0:

n=0 an = a0 + a1 + a2 + a3 + · · ·

slide-18
SLIDE 18

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

◮ Metric and topology defined by “a is small” ⇐

⇒ “val(a) is large”

◮ In a complete valuation ring, a series is convergent iff its general term goes to 0:

n=0 an = a0 + a1 + a2 + a3 + · · ·

slide-19
SLIDE 19

5

Examples of valued fields and rings

Now In part 2 Ring K ◦ Field K Uniformizer π Residue field K ◦/π Complete Z(p) Q p prime Fp × Zp Qp p prime Fp

  • C[x](x−α)

C(x) x − α C × C[[x − α]] C((x − α)) x − α C

  • Frac

val ≥ 0

◮ Metric and topology defined by “a is small” ⇐

⇒ “val(a) is large”

◮ In a complete valuation ring, a series is convergent iff its general term goes to 0:

n=0 an = a0 + a1 + a2 + a3 + · · ·

slide-20
SLIDE 20

6

Tate Series

X = X1, . . . , Xn Definition

◮ K{X}◦ = ring of series in X with coefficients in K ◦ converging for all x ∈ K ◦

= ring of power series whose general coefficients tend to 0 Motivation

◮ Introduced by Tate in 1971 for rigid geometry

(p-adic equivalent of the bridge between algebraic and analytic geometry over C) Examples

◮ Polynomials (finite sums are convergent) ◮

  • i,j=0

πi+jX iY j = 1 + πX + πY + π2X 2 + π2XY + π2Y 2 + · · ·

◮ Not a Tate series:

  • i=0

X i = 1 + 1X + 1X 2 + 1X 3 + · · ·

slide-21
SLIDE 21

7

Term ordering for Tate algebras

Xi = X i1

1 · · · X in n

◮ Starting from a usual monomial ordering 1 <m Xi1 <m Xi2 <m . . . ◮ We define a term ordering puting more weight on large coefficients

Usual term ordering: π · 1 <m 1 Xi1 <m π Xi2 <m π2 Xi3 <m · · · Term ordering for Tate series: · · · < π2 Xi3 < π· 1 < π Xi2 < 1 Xi1 < · · · <m

slide-22
SLIDE 22

7

Term ordering for Tate algebras

Xi = X i1

1 · · · X in n

◮ Starting from a usual monomial ordering 1 <m Xi1 <m Xi2 <m . . . ◮ We define a term ordering puting more weight on large coefficients

Usual term ordering: π · 1 <m 1 Xi1 <m π Xi2 <m π2 Xi3 <m · · · Term ordering for Tate series: · · · < π2 Xi3 < π· 1 < π Xi2 < 1 Xi1 < · · · <m

◮ It has infinite descending chains, but they converge to zero ◮ Tate series always have a leading term

f = a2XY + a1X + a0 · 1 + a3X 2Y 2 + . . . LT(f )

slide-23
SLIDE 23

7

Term ordering for Tate algebras

Xi = X i1

1 · · · X in n

◮ Starting from a usual monomial ordering 1 <m Xi1 <m Xi2 <m . . . ◮ We define a term ordering puting more weight on large coefficients

Usual term ordering: π · 1 <m 1 Xi1 <m π Xi2 <m π2 Xi3 <m · · · Term ordering for Tate series: · · · < π2 Xi3 < π· 1 < π Xi2 < 1 Xi1 < · · · <m

◮ It has infinite descending chains, but they converge to zero ◮ Tate series always have a leading term ◮ Isomorphism

K{X}◦/π ≃ F[X] f → f compatible with the term order f = a2XY + a1X + a0 · 1 + a3X 2Y 2 + . . . f = a2XY + a1X LT(f )

slide-24
SLIDE 24

8

Gröbner bases

◮ Standard definition once the term order is defined:

G is a Gröbner basis of I ⇐ ⇒ for all f ∈ I, there is g ∈ G s.t. LT(g) divides LT(f )

◮ Standard equivalent characterizations:

  • 1. G is a Gröbner basis of I
  • 2. for all f ∈ I, f is reducible modulo G
  • 3. for all f ∈ I, f reduces to zero modulo G

πf ∈ I = ⇒ f ∈ I ∃ sequence of reductions converging to 0

◮ Every Tate ideal has a finite Gröbner basis ◮ It can be computed using the usual algorithms (reduction, Buchberger, F4) ◮ In practice, the algorithms run with finite precision and without loss of precision

slide-25
SLIDE 25

8

Gröbner bases

◮ Standard definition once the term order is defined:

G is a Gröbner basis of I ⇐ ⇒ for all f ∈ I, there is g ∈ G s.t. LT(g) divides LT(f )

◮ Standard equivalent characterizations and a surprising one:

  • 1. G is a Gröbner basis of I
  • 2. for all f ∈ I, f is reducible modulo G
  • 3. for all f ∈ I, f reduces to zero modulo G

If I is saturated:

  • 4. G is a Gröbner basis of I in the sense of F[X]

πf ∈ I = ⇒ f ∈ I ∃ sequence of reductions converging to 0

◮ Every Tate ideal has a finite Gröbner basis ◮ It can be computed using the usual algorithms (reduction, Buchberger, F4) ◮ In practice, the algorithms run with finite precision and without loss of precision

slide-26
SLIDE 26

8

Gröbner bases

◮ Standard definition once the term order is defined:

G is a Gröbner basis of I ⇐ ⇒ for all f ∈ I, there is g ∈ G s.t. LT(g) divides LT(f )

◮ Standard equivalent characterizations and a surprising one:

  • 1. G is a Gröbner basis of I
  • 2. for all f ∈ I, f is reducible modulo G
  • 3. for all f ∈ I, f reduces to zero modulo G

If I is saturated:

  • 4. G is a Gröbner basis of I in the sense of F[X]

πf ∈ I = ⇒ f ∈ I ∃ sequence of reductions converging to 0

◮ Every Tate ideal has a finite Gröbner basis ◮ It can be computed using the usual algorithms (reduction, Buchberger, F4) ◮ In practice, the algorithms run with finite precision and without loss of precision

No division by π

slide-27
SLIDE 27

9

Buchberger’s algorithm

  • 1. G ← {f1, . . . , fm}
  • 2. B ← {S-pol of g1 and g2 for g1, g2 ∈ G}
  • 3. While B = ∅:

4. Pop v from B 5. w ← reduction of v modulo G 6. If w = 0: 7. Pass 8. Else: 9. B ← B ∪ {S-pol of w and g for g ∈ G} 10. G ← G ∪ {w}

  • 11. Return G
slide-28
SLIDE 28

10

Why signatures?

Problem: useless and redundant computations, infinite reductions to 0 Example with a S-polynomial p = p1f1 + p2f2 + · · · + pkfk + · · · + pmfm p = p1e1 + p2e2 + · · · + pkek + · · · + pmem = LT(pk)ek + smaller terms q = q1f1 + q2f2 + · · · + qlfl + · · · + qmfm q = q1e1 + q2e2 + · · · + qlel + · · · + qmem = LT(ql)el + smaller terms S-Pol(p, q) = µp − νq S-Pol(p, q) = µ (p1e1 + · · · + pkek + · · · + pmem) − ν (q1e1 + · · · + qlel + · · · + qmem) = µLT(pk)ek − νLT(ql)el + smaller terms = µLT(pk)ek + smaller terms if µLT(pk)ek νLT(ql)el

slide-29
SLIDE 29

10

Why signatures?

Problem: useless and redundant computations, infinite reductions to 0

◮ 1st idea: keep track of the representation of the ideal elements

[Möller, Mora, Traverso 1992]

Example with a S-polynomial p = p1f1 + p2f2 + · · · + pkfk + · · · + pmfm p = p1e1 + p2e2 + · · · + pkek + · · · + pmem = LT(pk)ek + smaller terms q = q1f1 + q2f2 + · · · + qlfl + · · · + qmfm q = q1e1 + q2e2 + · · · + qlel + · · · + qmem = LT(ql)el + smaller terms S-Pol(p, q) = µp − νq S-Pol(p, q) = µ (p1e1 + · · · + pkek + · · · + pmem) − ν (q1e1 + · · · + qlel + · · · + qmem) = µLT(pk)ek − νLT(ql)el + smaller terms = µLT(pk)ek + smaller terms if µLT(pk)ek νLT(ql)el

slide-30
SLIDE 30

10

Why signatures?

Problem: useless and redundant computations, infinite reductions to 0

◮ 1st idea: keep track of the representation of the ideal elements

[Möller, Mora, Traverso 1992]

◮ 2nd idea: the largest term of the representation is enough

[Faugère 2002 ; Gao, Volny, Wang 2010 ; Arri, Perry 2011... Eder, Faugère 2017]

Example with a S-polynomial p = p1f1 + p2f2 + · · · + pkfk + · · · + 0 fm p = p1e1 + p2e2 + · · · + pkek + · · · + 0 em = LT(pk)ek + smaller terms q = q1f1 + q2f2 + · · · + qlfl + · · · + 0 fm q = q1e1 + q2e2 + · · · + qlel + · · · + 0 em = LT(ql)el + smaller terms S-Pol(p, q) = µp − νq S-Pol(p, q) = µ (p1e1 + · · · + pkek + · · · + 0 em) − ν (q1e1 + · · · + qlel + · · · + 0 em) = µLT(pk)ek − νLT(ql)el + smaller terms = µLT(pk)ek + smaller terms if µLT(pk)ek νLT(ql)el

slide-31
SLIDE 31

10

Why signatures?

Problem: useless and redundant computations, infinite reductions to 0

◮ 1st idea: keep track of the representation of the ideal elements

[Möller, Mora, Traverso 1992]

◮ 2nd idea: the largest term of the representation is enough

[Faugère 2002 ; Gao, Volny, Wang 2010 ; Arri, Perry 2011... Eder, Faugère 2017]

Example with a S-polynomial p = p1f1 + p2f2 + · · · + pkfk + · · · + 0 fm p = p1e1 + p2e2 + · · · + pkek + · · · + 0 em = LT(pk)ek + smaller terms q = q1f1 + q2f2 + · · · + qlfl + · · · + 0 fm q = q1e1 + q2e2 + · · · + qlel + · · · + 0 em = LT(ql)el + smaller terms S-Pol(p, q) = µp − νq S-Pol(p, q) = µ (p1e1 + · · · + pkek + · · · + 0 em) − ν (q1e1 + · · · + qlel + · · · + 0 em) = µLT(pk)ek − νLT(ql)el + smaller terms = µLT(pk)ek + smaller terms if µLT(pk)ek νLT(ql)el

slide-32
SLIDE 32

10

Why signatures?

Problem: useless and redundant computations, infinite reductions to 0

◮ 1st idea: keep track of the representation of the ideal elements

[Möller, Mora, Traverso 1992]

◮ 2nd idea: the largest term of the representation is enough

[Faugère 2002 ; Gao, Volny, Wang 2010 ; Arri, Perry 2011... Eder, Faugère 2017]

Example with a S-polynomial p = p1f1 + p2f2 + · · · + pkfk + · · · + 0 fm p = p1e1 + p2e2 + · · · + pkek + · · · + 0 em = LT(pk)ek + smaller terms s(p) = signature of p q = q1f1 + q2f2 + · · · + qlfl + · · · + 0 fm q = q1e1 + q2e2 + · · · + qlel + · · · + 0 em = LT(ql)el + smaller terms S-Pol(p, q) = µp − νq S-Pol(p, q) = µ (p1e1 + · · · + pkek + · · · + 0 em) − ν (q1e1 + · · · + qlel + · · · + 0 em) = µLT(pk)ek − νLT(ql)el + smaller terms = µLT(pk)ek + smaller terms if µLT(pk)ek νLT(ql)el Regular S-polynomial

slide-33
SLIDE 33

11

Buchberger’s algorithm, with signatures

  • 1. G ← {(e1, f1), . . . , (em, fm)}
  • 2. B ← {S-pol of p1 and p2 for p1, p2 ∈ G}
  • 3. While B = ∅:

4. Pop (u, v) from B with smallest u 5. w ← regular reduction of (u, v) modulo G 6. If w = 0: 7. Pass 8. Else: 9. B ← B ∪ {regular S-pol of (u, w) and p for p ∈ G} 10. G ← G ∪ {(u, w)}

  • 11. Return G
slide-34
SLIDE 34

11

Buchberger’s algorithm, with signatures

Need to order the signatures!

  • 1. G ← {(e1, f1), . . . , (em, fm)}
  • 2. B ← {S-pol of p1 and p2 for p1, p2 ∈ G}
  • 3. While B = ∅:

4. Pop (u, v) from B with smallest u 5. w ← regular reduction of (u, v) modulo G 6. If w = 0: 7. Pass 8. Else: 9. B ← B ∪ {regular S-pol of (u, w) and p for p ∈ G} 10. G ← G ∪ {(u, w)}

  • 11. Return G
slide-35
SLIDE 35

12

Signature orderings

Signature orderings:

◮ Necessary for correctness and termination of the algorithms ◮ Different choices lead to different performances

Examples (polynomial case):

◮ µei <pot νej ⇐

⇒ i < j, or if equal, µ < ν

◮ µei <top νej ⇐

⇒ µ < ν, or if equal, i < j

◮ µei <dopot νej ⇐

⇒ deg(p) < deg(q), or if equal, i < j, or if equal, µ < ν

◮ µei <vopot νej ⇐

⇒ val(p) < val(q), or if equal, i < j, or if equal, µ < ν

◮ Theoretically convenient ◮ Incremental ◮ Rarely the most efficient ◮ Beter in practice ◮ Theoretically complicated ◮ “F5-ordering” for homogeneous systems and degree order ◮ Avoid going too high in degree, still incremental ◮ Best of both worlds ◮ Analogue of the F5 ordering for the valuation ◮ Allows to delay (or avoid) high valuation computations

Position Term Position Term Position Term Degree Position Term Valuation

  • ver
  • ver
  • ver
  • ver
  • ver
  • ver
slide-36
SLIDE 36

12

Signature orderings

Signature orderings:

◮ Necessary for correctness and termination of the algorithms ◮ Different choices lead to different performances

Examples (polynomial case):

◮ µei <pot νej ⇐

⇒ i < j, or if equal, µ < ν

◮ µei <top νej ⇐

⇒ µ < ν, or if equal, i < j

◮ µei <dopot νej ⇐

⇒ deg(p) < deg(q), or if equal, i < j, or if equal, µ < ν

◮ µei <vopot νej ⇐

⇒ val(p) < val(q), or if equal, i < j, or if equal, µ < ν

◮ Theoretically convenient ◮ Incremental ◮ Rarely the most efficient ◮ Beter in practice ◮ Theoretically complicated ◮ “F5-ordering” for homogeneous systems and degree order ◮ Avoid going too high in degree, still incremental ◮ Best of both worlds ◮ Analogue of the F5 ordering for the valuation ◮ Allows to delay (or avoid) high valuation computations

Position Term Position Term Position Term Degree Position Term Valuation

  • ver
  • ver
  • ver
  • ver
  • ver
  • ver
slide-37
SLIDE 37

13

Buchberger’s algorithm, incremental variant

  • 1. Q ← (f1, . . . , fm)
  • 2. G ← ∅
  • 3. For f ∈ Q

4. G ← G ∪ {f } 5. B ← {S-pol of f and g for g ∈ G} 6. While B = ∅: 7. Pop v from B 8. w ← reduction of v modulo G 9. If w = 0: 10. Pass 11. Else: 12. B ← B ∪ {S-pol of w and g for g ∈ G} 13. G ← G ∪ {w}

  • 14. Return G
slide-38
SLIDE 38

14

Signature orderings for Tate series

Signature orderings:

◮ Necessary for correctness and termination of the algorithms ◮ Different choices lead to different performances ◮ Difficulty with Tate series: multiplying by π should decrease the signature

Orders for Tate series:

◮ µei <pot νej ⇐

⇒ i < j, or if equal, µ < ν

◮ µei <top νej ⇐

⇒ µ < ν, or if equal, i < j

◮ µei <dopot νej ⇐

⇒ deg(p) < deg(q), or if equal, i < j, or if equal, µ < ν

◮ µei <vopot νej ⇐

⇒ val(p) < val(q), or if equal, i < j, or if equal, µ < ν

◮ Theoretically convenient ◮ Incremental ◮ Rarely the most efficient ◮ Beter in practice ◮ Theoretically complicated ◮ “F5-ordering” for homogeneous systems and degree order ◮ Avoid going too high in degree, still incremental ◮ Best of both worlds ◮ Analogue of the F5 ordering for the valuation ◮ Allows to delay (or avoid) high valuation computations

Position Term Position Term Position Term Degree Position Term Valuation

  • ver
  • ver
  • ver
  • ver
  • ver
  • ver
slide-39
SLIDE 39

15

Signature-based algorithm, PoT ordering

  • 1. Q ← (f1, . . . , fm)
  • 2. G ← ∅
  • 3. For f ∈ Q

4. GS ← {(0, g) : g ∈ GS} ∪ {(1, f )} 5. B ← {S-pol of (1, f ) and p for p ∈ GS} 6. While B = ∅: 7. Pop (u, v) from B with smallest u 8. w ← regular reduction of (u, v) modulo GS 9. If w = 0: 10. Pass 11. Else: 12. B ← B ∪ {regular S-pol of (u, w) and p for p ∈ GS} 13. GS ← GS ∪ {(u, w)} 14. G ← {v : (u, v) ∈ GS}

  • 15. Return G
slide-40
SLIDE 40

16

Signature orderings for Tate series

Signature orderings:

◮ Necessary for correctness and termination of the algorithms ◮ Different choices lead to different performances ◮ Difficulty with Tate series: multiplying by π should decrease the signature

Orders for Tate series:

◮ µei <pot νej ⇐

⇒ i < j, or if equal, µ < ν

◮ µei <top νej ⇐

⇒ µ < ν, or if equal, i < j

◮ µei <dopot νej ⇐

⇒ deg(p) < deg(q), or if equal, i < j, or if equal, µ < ν

◮ µei <vopot νej ⇐

⇒ val(p) < val(q), or if equal, i < j, or if equal, µ < ν

◮ Theoretically convenient ◮ Incremental ◮ Rarely the most efficient ◮ Beter in practice ◮ Theoretically complicated ◮ “F5-ordering” for homogeneous systems and degree order ◮ Avoid going too high in degree, still incremental ◮ Best of both worlds ◮ Analogue of the F5 ordering for the valuation ◮ Allows to delay (or avoid) high valuation computations

Position Term Position Term Position Term Degree Position Term Valuation

  • ver
  • ver
  • ver
  • ver
  • ver
  • ver
slide-41
SLIDE 41

17

Signature-based algorithm, VoPoT ordering

  • 1. Q ← (f1, . . . , fm)
  • 2. G ← ∅
  • 3. While ∃f ∈ Q with smallest valuation:

4. GS ← {(0, g) : g ∈ GS} ∪ {(1, f )} 5. B ← {S-pol of (1, f ) and p for p ∈ GS} 6. While B = ∅: 7. Pop (u, v) from B with smallest u 8. w ← regular reduction of (u, v) modulo GS 9. If val(w) > val(f ): 10. Q ← Q ∪ w 11. Else: 12. B ← B ∪ {regular S-pol of (u, w) and p for p ∈ GS} 13. GS ← GS ∪ {(u, w)} 14. G ← {v : (u, v) ∈ GS}

  • 15. Return G
slide-42
SLIDE 42

18

Conclusion and perspectives

Results:

◮ Possible to design signature-based algorithms for Tate algebras ◮ Two algorithms with two orders ◮ Implemented in Sage, working towards including them in the distribution

Future work:

◮ Reduction of Tate series is very different from reduction of polynomials ◮ Design algorithms to perform those reductions more efficiently ◮ Goal: being able to take advantage of e.g. delaying reductions in VoPoT

References:

◮ Caruso, Vaccon and Verron, ‘Gröbner bases over Tate algebras’ (2019) ◮ Caruso, Vaccon and Verron, ‘Signature-based algorithms for Gröbner bases over Tate

algebras’ (2020) [preprint]

slide-43
SLIDE 43

19

Part 2: Integral bases of P-recursive sequences

joint work with Shaoshi Chen1, Lixin Du1,2 and Manuel Kauers2

  • 1. Chinese Academy of Sciences, Beijing, China
  • 2. Johannes Kepler University, Linz, Austria

Séminaire Calcul Formel, Limoges 27 février 2020

slide-44
SLIDE 44

20

What does it mean to be integral?

Ring K ◦ Field K Valuation at Zp Qp p prime C[[x − α]] C((x − α)) x − α Z Q All primes C[x] C(x) All x − α OC[X] C(x) All x − α

  • Sol. of diffeq

with poly. coefs.

  • All x − α
  • Sol. of rec.

with poly. coefs.

  • Frac

val ≥ 0

  • Denom. ∈ {±1}
  • Denom. ∈ C
  • Denom. of minpoly ∈ C

⇐ ⇒ “no pole” “No pole”

[Kauers Koutschan 2015]

This work : “val ≥ 0” Local integrality Global integrality

slide-45
SLIDE 45

20

What does it mean to be integral?

Ring K ◦ Field K Valuation at Zp Qp p prime C[[x − α]] C((x − α)) x − α Z Q All primes C[x] C(x) All x − α OC[X] C(x) All x − α

  • Sol. of diffeq

with poly. coefs.

  • All x − α
  • Sol. of rec.

with poly. coefs.

  • Frac

val ≥ 0

  • Denom. ∈ {±1}
  • Denom. ∈ C
  • Denom. of minpoly ∈ C

⇐ ⇒ “no pole” “No pole”

[Kauers Koutschan 2015]

This work : “val ≥ 0” Local integrality Global integrality

slide-46
SLIDE 46

20

What does it mean to be integral?

Ring K ◦ Field K Valuation at Zp Qp p prime C[[x − α]] C((x − α)) x − α Z Q All primes C[x] C(x) All x − α OC[X] C(x) All x − α

  • Sol. of diffeq

with poly. coefs.

  • All x − α
  • Sol. of rec.

with poly. coefs.

  • Frac

val ≥ 0

  • Denom. ∈ {±1}
  • Denom. ∈ C
  • Denom. of minpoly ∈ C

⇐ ⇒ “no pole” “No pole”

[Kauers Koutschan 2015]

This work : “val ≥ 0” Local integrality Global integrality

slide-47
SLIDE 47

20

What does it mean to be integral?

Ring K ◦ Field K Valuation at Zp Qp p prime C[[x − α]] C((x − α)) x − α Z Q All primes C[x] C(x) All x − α OC[X] C(x) All x − α

  • Sol. of diffeq

with poly. coefs.

  • All x − α
  • Sol. of rec.

with poly. coefs.

  • Frac

val ≥ 0

  • Denom. ∈ {±1}
  • Denom. ∈ C
  • Denom. of minpoly ∈ C

⇐ ⇒ “no pole” “No pole”

[Kauers Koutschan 2015]

This work : “val ≥ 0” Local integrality Global integrality

slide-48
SLIDE 48

20

What does it mean to be integral?

Ring K ◦ Field K Valuation at Zp Qp p prime C[[x − α]] C((x − α)) x − α Z Q All primes C[x] C(x) All x − α OC[X] C(x) All x − α

  • Sol. of diffeq

with poly. coefs.

  • All x − α
  • Sol. of rec.

with poly. coefs.

  • Frac

val ≥ 0 ⇐ ⇒ “no pole”

  • Denom. ∈ {±1}
  • Denom. ∈ C
  • Denom. of minpoly ∈ C

⇐ ⇒ “no pole” “No pole”

[Kauers Koutschan 2015]

This work : “val ≥ 0” Local integrality Global integrality

slide-49
SLIDE 49

20

What does it mean to be integral?

Ring K ◦ Field K Valuation at Zp Qp p prime C[[x − α]] C((x − α)) x − α Z Q All primes C[x] C(x) All x − α OC[X] C(x) All x − α

  • Sol. of diffeq

with poly. coefs.

  • All x − α
  • Sol. of rec.

with poly. coefs.

  • Frac

val ≥ 0 ⇐ ⇒ “no pole”

  • Denom. ∈ {±1}
  • Denom. ∈ C
  • Denom. of minpoly ∈ C

⇐ ⇒ “no pole” “No pole”

[Kauers Koutschan 2015]

This work : “val ≥ 0” Local integrality Global integrality

slide-50
SLIDE 50

20

What does it mean to be integral?

Ring K ◦ Field K Valuation at Zp Qp p prime C[[x − α]] C((x − α)) x − α Z Q All primes C[x] C(x) All x − α OC[X] C(x) All x − α

  • Sol. of diffeq

with poly. coefs.

  • All x − α
  • Sol. of rec.

with poly. coefs.

  • Frac

val ≥ 0 ⇐ ⇒ “no pole”

  • Denom. ∈ {±1}
  • Denom. ∈ C
  • Denom. of minpoly ∈ C

⇐ ⇒ “no pole” “No pole”

[Kauers Koutschan 2015]

This work : “val ≥ 0” Local integrality Global integrality

slide-51
SLIDE 51

21

Beter framework: integral operators

Polynomial algebras:

◮ “Algebraic equations”: C(x)[y], commutative: xy = yx

Algebraic case (finite extension):

◮ Given α(x) ∈ C(x) or equivalently given P ∈ C[x][y] ◮ Qestion: What are integral elements of C(x)(α) = C(x)[y]/P? ◮ Answer: Q is integral iff for all α(x) sol of P, (Q(α))(x) does not have any pole ◮ Integral elements form a C[x]-algebra in C(x)[y]

Can we compute a basis of that set as a C[x]-module?

◮ Yes: Trager’s algorithm, van Hoeij’s algorithm ◮ Application: computation of integrals

[Trager 1984]

slide-52
SLIDE 52

21

Beter framework: integral operators

Polynomial and Ore algebras:

◮ “Algebraic equations”: C(x)[y], commutative: xy = yx ◮ “Differential equations”: C(x)D, non-commutative: Dx = xD + 1

Differential case:

◮ Given L ∈ C[x]D ◮ Qestion: What are integral elements of C(x)D/L? ◮ Answer: B is integral iff for all α(x) sol of L, (B · α))(x) does not have any pole ◮ Integral elements form a C[x]-module in C(x)D

Can we compute a basis of that C[x]-module?

◮ Yes: adaptation of van Hoeij’s algorithm

[Kauers, Koutschan 2015]

◮ Application: computation of integrals

[Chen, van Hoeij, Kauers, Koutschan 2018]

slide-53
SLIDE 53

21

Beter framework: integral operators

Polynomial and Ore algebras:

◮ “Algebraic equations”: C(x)[y], commutative: xy = yx ◮ “Differential equations”: C(x)D, non-commutative: Dx = xD + 1 ◮ “Recurrence equations”: C(n)S, non-commutative: Sn = (n + 1)S

Recurrence case:

◮ Given L ∈ C[x]S ◮ Qestion: What are integral elements of C(x)S/L? ◮ Answer: B is integral iff for all α(x) sol of L, (B · α))(x) ... ???

slide-54
SLIDE 54

21

Beter framework: integral operators

Polynomial and Ore algebras:

◮ “Algebraic equations”: C(x)[y], commutative: xy = yx ◮ “Differential equations”: C(x)D, non-commutative: Dx = xD + 1 ◮ “Recurrence equations”: C(n)S, non-commutative: Sn = (n + 1)S

Recurrence case:

◮ Given L ∈ C[x]S ◮ Qestion: What are integral elements of C(x)S/L? ◮ Answer: B is integral iff for all α(x) sol of L, (B · α))(x) has “valuation” ≥ 0 everywhere ◮ Integral elements form a C[x]-module in C(x)D

Can we compute a basis of that C[x]-module?

◮ Yes: adaptation of van Hoeij’s algorithm

[Chen, Du, Kauers, V. 2020]

◮ Application: computation of sums?

slide-55
SLIDE 55

22

Van Hoeij’s algorithm for finding integral bases (differential case)

f1, . . . , fr ∈ C((x−α)) basis of solutions of L

  • Input. L ∈ C[x]D with order r, α ∈ C
  • Output. B1, . . . , Br basis of C(x)D/L integral at α
  • 1. B1, . . . , Br ← basis of C(x)D/L
  • 2. For d ∈ {1, . . . , r}:

3. While Bi is not integral at α 4. Bi ← (x − α)Bi 5. While there exists a1, . . . , ad−1 ∈ C such that A :=

1 x−α (a1B1 + · · · + ad−1Bd−1 − Bd) is integral at α

6. Bd ← A

  • 7. Return B1, . . . , Br

Local algorithm: Global algorithm: loop over all α ∈ C

slide-56
SLIDE 56

22

Van Hoeij’s algorithm for finding integral bases (differential case)

f1, . . . , fr ∈ C((x−α)) basis of solutions of L B1, . . . , Br ← 1, . . . , Dr−1

  • Input. L ∈ C[x]D with order r, α ∈ C
  • Output. B1, . . . , Br basis of C(x)D/L integral at α
  • 1. B1, . . . , Br ← basis of C(x)D/L
  • 2. For d ∈ {1, . . . , r}:

3. While Bi is not integral at α 4. Bi ← (x − α)Bi 5. While there exists a1, . . . , ad−1 ∈ C such that A :=

1 x−α (a1B1 + · · · + ad−1Bd−1 − Bd) is integral at α

6. Bd ← A

  • 7. Return B1, . . . , Br

Local algorithm: Global algorithm: loop over all α ∈ C

slide-57
SLIDE 57

22

Van Hoeij’s algorithm for finding integral bases (differential case)

f1, . . . , fr ∈ C((x−α)) basis of solutions of L B1, . . . , Br ← 1, . . . , Dr−1 Bi · fj has a pole at α for some j

  • Input. L ∈ C[x]D with order r, α ∈ C
  • Output. B1, . . . , Br basis of C(x)D/L integral at α
  • 1. B1, . . . , Br ← basis of C(x)D/L
  • 2. For d ∈ {1, . . . , r}:

3. While Bi is not integral at α 4. Bi ← (x − α)Bi 5. While there exists a1, . . . , ad−1 ∈ C such that A :=

1 x−α (a1B1 + · · · + ad−1Bd−1 − Bd) is integral at α

6. Bd ← A

  • 7. Return B1, . . . , Br

Local algorithm: Global algorithm: loop over all α ∈ C

slide-58
SLIDE 58

22

Van Hoeij’s algorithm for finding integral bases (differential case)

f1, . . . , fr ∈ C((x−α)) basis of solutions of L B1, . . . , Br ← 1, . . . , Dr−1 Bi · fj has a pole at α for some j ⇐ ⇒ ∀ j, (a1B1 + · · · + ad−1Bd−1 − Bd) · fj(α) = 0 ⇐ ⇒ ∀ j, a1B1 · fj(α) + . . . ad−1Bd−1 · fj(α) = Bd · fj(α) Linear system of equations

  • Input. L ∈ C[x]D with order r, α ∈ C
  • Output. B1, . . . , Br basis of C(x)D/L integral at α
  • 1. B1, . . . , Br ← basis of C(x)D/L
  • 2. For d ∈ {1, . . . , r}:

3. While Bi is not integral at α 4. Bi ← (x − α)Bi 5. While there exists a1, . . . , ad−1 ∈ C such that A :=

1 x−α (a1B1 + · · · + ad−1Bd−1 − Bd) is integral at α

6. Bd ← A

  • 7. Return B1, . . . , Br

Local algorithm: Global algorithm: loop over all α ∈ C

slide-59
SLIDE 59

22

Van Hoeij’s algorithm for finding integral bases (differential case)

f1, . . . , fr ∈ C((x−α)) basis of solutions of L B1, . . . , Br ← 1, . . . , Dr−1 Bi · fj has a pole at α for some j ⇐ ⇒ ∀ j, (a1B1 + · · · + ad−1Bd−1 − Bd) · fj(α) = 0 ⇐ ⇒ ∀ j, a1B1 · fj(α) + . . . ad−1Bd−1 · fj(α) = Bd · fj(α) Linear system of equations

  • Input. L ∈ C[x]D with order r, α ∈ C
  • Output. B1, . . . , Br basis of C(x)D/L integral at α
  • 1. B1, . . . , Br ← basis of C(x)D/L
  • 2. For d ∈ {1, . . . , r}:

3. While Bi is not integral at α 4. Bi ← (x − α)Bi 5. While there exists a1, . . . , ad−1 ∈ C such that A :=

1 x−α (a1B1 + · · · + ad−1Bd−1 − Bd) is integral at α

6. Bd ← A

  • 7. Return B1, . . . , Br

Local algorithm: Global algorithm: loop over all α ∈ C

slide-60
SLIDE 60

22

Van Hoeij’s algorithm for finding integral bases (differential case)

f1, . . . , fr ∈ C((x−α)) basis of solutions of L B1, . . . , Br ← 1, . . . , Dr−1 Bi · fj has a pole at α for some j ⇐ ⇒ ∀ j, (a1B1 + · · · + ad−1Bd−1 − Bd) · fj(α) = 0 ⇐ ⇒ ∀ j, a1B1 · fj(α) + . . . ad−1Bd−1 · fj(α) = Bd · fj(α) Linear system of equations Nothing happens at all but finitely many of them (roots of the leading coefficient of L)

  • Input. L ∈ C[x]D with order r, α ∈ C
  • Output. B1, . . . , Br basis of C(x)D/L integral at α
  • 1. B1, . . . , Br ← basis of C(x)D/L
  • 2. For d ∈ {1, . . . , r}:

3. While Bi is not integral at α 4. Bi ← (x − α)Bi 5. While there exists a1, . . . , ad−1 ∈ C such that A :=

1 x−α (a1B1 + · · · + ad−1Bd−1 − Bd) is integral at α

6. Bd ← A

  • 7. Return B1, . . . , Br

Local algorithm: Global algorithm: loop over all α ∈ C

slide-61
SLIDE 61

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 0 = 0 1 −3 × 0 = −6 1 0 = 10 × 3 −1 0 = 0 1 . . . 0 = 0 5 −6 2 . . .

slide-62
SLIDE 62

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 0 = 0 1 −3 × 0 = −6 1 0 = 10 × 3 −1 0 = 0 1 . . . 0 = 0 5 −6 2 . . .

slide-63
SLIDE 63

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 0 = 0 1 −3 × 0 = −6 1 0 = 10 × 3 −1 0 = 0 1 . . . 0 = 0 5 −6 2 . . .

slide-64
SLIDE 64

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 0 = 0 1 −3 × 0 = −6 1 0 = 10 × 3 −1 0 = 0 1 . . . 0 = 0 5 −6 2 . . .

slide-65
SLIDE 65

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 0 = 0 1 −3 × 0 = −6 1 0 = 10 × 3 −1 0 = 0 1 . . . 0 = 0 5 −6 2 . . .

slide-66
SLIDE 66

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 . . . 1 −3 × 0 = −6 1 . . . 0 = 10 × 3 −1 . . . 1 . . . 0 = 0 5 −6 2 . . .

slide-67
SLIDE 67

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un ◮ (n − 1)(n + 1)un = −(n − 3)un+1 − (n − 1)un+3

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 . . . 1 −3 × 0 = −6 1 . . . 0 = 10 × 3 −1 . . . 1 . . . 0 = 0 5 −6 2 . . .

slide-68
SLIDE 68

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un ◮ (n − 1)(n + 1)un = −(n − 3)un+1 − (n − 1)un+3

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 . . . 1 −3 × 0 = −6 1 . . . 0 = 10 × 3 −1 . . . 1 . . . 0 = 0 5 −6 2 . . .

slide-69
SLIDE 69

23

Finding solutions of P-recursive sequences

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Natural action: L acts on CZ via (n · u)k = kuk, (S · u)k = uk+1

If (un)n∈Z ∈ CZ is a solution, then for all n ∈ Z:

◮ (n − 1)un+3 = −(n − 3)un+1 − (n − 1)(n + 1)un ◮ (n − 1)(n + 1)un = −(n − 3)un+1 − (n − 1)un+3

. . . −1 1 2 3 4 . . . 1 −1 × 0 = −2 0 = 4 × 1 . . . 1 −3 × 0 = −6 . . . 1 . . . 0 = 10 × 3 −1 . . . . . . 1 . . . . . . 5 −6 2 . . .

slide-70
SLIDE 70

24

Finding robust solutions of P-recursive sequences

L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Deformed action: L acts on C(q)Z or C((q))Z via (n · u)k = (k + q)uk ◮ Recover usual solutions by seting q = 0

1 2 3 4 5 · · · 1 −q − 1 (q + 1)(q − 2) q (q − 2)(1 − q) q · · · 1 −q − 2 (q − 1)(q + 2) q + 1 · · · 1 3 − q q − 1 (q − 3)(q − 2) q(q − 1) 6 + . . . q(q + 1) · · · q −q(q + 1) (q + 1)(q − 2) (q − 2)(1 − q) · · · q q(3 − q) q − 1 (q − 3)(q − 2) q − 1 6 + . . . q + 1 · · · q − 3 q − 1 −q − 1 (q + 1)(q + 3) · · ·

slide-71
SLIDE 71

24

Finding robust solutions of P-recursive sequences

L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Deformed action: L acts on C(q)Z or C((q))Z via (n · u)k = (k + q)uk ◮ Recover usual solutions by seting q = 0

1 2 3 4 5 · · · 1 −q − 1 (q + 1)(q − 2) q (q − 2)(1 − q) q · · · 1 −q − 2 (q − 1)(q + 2) q + 1 · · · 1 3 − q q − 1 (q − 3)(q − 2) q(q − 1) 6 + . . . q(q + 1) · · · q −q(q + 1) (q + 1)(q − 2) (q − 2)(1 − q) · · · q q(3 − q) q − 1 (q − 3)(q − 2) q − 1 6 + . . . q + 1 · · · q − 3 q − 1 −q − 1 (q + 1)(q + 3) · · ·

slide-72
SLIDE 72

24

Finding robust solutions of P-recursive sequences

L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Deformed action: L acts on C(q)Z or C((q))Z via (n · u)k = (k + q)uk ◮ Recover usual solutions by seting q = 0

1 2 3 4 5 · · · 1 −q − 1 (q + 1)(q − 2) q (q − 2)(1 − q) q · · · 1 −q − 2 (q − 1)(q + 2) q + 1 · · · 1 3 − q q − 1 (q − 3)(q − 2) q(q − 1) 6 + . . . q(q + 1) · · · q −q(q + 1) (q + 1)(q − 2) (q − 2)(1 − q) · · · q q(3 − q) q − 1 (q − 3)(q − 2) q − 1 6 + . . . q + 1 · · · q − 3 q − 1 −q − 1 (q + 1)(q + 3) · · ·

slide-73
SLIDE 73

24

Finding robust solutions of P-recursive sequences

L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Deformed action: L acts on C(q)Z or C((q))Z via (n · u)k = (k + q)uk ◮ Recover usual solutions by seting q = 0

1 2 3 4 5 · · · 1 −q − 1 (q + 1)(q − 2) q (q − 2)(1 − q) q · · · 1 −q − 2 (q − 1)(q + 2) q + 1 · · · 1 3 − q q − 1 (q − 3)(q − 2) q(q − 1) 6 + . . . q(q + 1) · · · q −q(q + 1) (q + 1)(q − 2) (q − 2)(1 − q) · · · q q(3 − q) q − 1 (q − 3)(q − 2) q − 1 6 + . . . q + 1 · · · q − 3 q − 1 −q − 1 (q + 1)(q + 3) · · ·

slide-74
SLIDE 74

24

Finding robust solutions of P-recursive sequences

L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Deformed action: L acts on C(q)Z or C((q))Z via (n · u)k = (k + q)uk ◮ Recover usual solutions by seting q = 0

1 2 3 4 5 · · · 1 −q − 1 (q + 1)(q − 2) q (q − 2)(1 − q) q · · · 1 −q − 2 (q − 1)(q + 2) q + 1 · · · 1 3 − q q − 1 (q − 3)(q − 2) q(q − 1) 6 + . . . q(q + 1) · · · q −q(q + 1) (q + 1)(q − 2) (q − 2)(1 − q) · · · q q(3 − q) q − 1 (q − 3)(q − 2) q − 1 6 + . . . q + 1 · · · q − 3 q − 1 −q − 1 (q + 1)(q + 3) · · ·

slide-75
SLIDE 75

24

Finding robust solutions of P-recursive sequences

L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Deformed action: L acts on C(q)Z or C((q))Z via (n · u)k = (k + q)uk ◮ Recover usual solutions by seting q = 0

1 2 3 4 5 · · · 1 −q − 1 (q + 1)(q − 2) q (q − 2)(1 − q) q · · · 1 −q − 2 (q − 1)(q + 2) q + 1 · · · 1 3 − q q − 1 (q − 3)(q − 2) q(q − 1) 6 + . . . q(q + 1) · · · q −q(q + 1) (q + 1)(q − 2) (q − 2)(1 − q) · · · q q(3 − q) q − 1 (q − 3)(q − 2) q − 1 6 + . . . q + 1 · · · q − 3 q − 1 −q − 1 (q + 1)(q + 3) · · ·

slide-76
SLIDE 76

24

Finding robust solutions of P-recursive sequences

L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 ∈ C[n]S with Sn = (n + 1)S

◮ Deformed action: L acts on C(q)Z or C((q))Z via (n · u)k = (k + q)uk ◮ Recover usual solutions by seting q = 0

1 2 3 4 5 · · · 1 −q − 1 (q + 1)(q − 2) q (q − 2)(1 − q) q · · · 1 −q − 2 (q − 1)(q + 2) q + 1 · · · 1 3 − q q − 1 (q − 3)(q − 2) q(q − 1) 6 + . . . q(q + 1) · · · q −q(q + 1) (q + 1)(q − 2) (q − 2)(1 − q) · · · q q(3 − q) q − 1 (q − 3)(q − 2) q − 1 6 + . . . q + 1 · · · q − 3 q − 1 −q − 1 (q + 1)(q + 3) · · ·

slide-77
SLIDE 77

25

P-recursive sequences: what are poles?

In practice, robust solutions of an operator look like this: u−7 u−6 u−5 u−4 u−3 u−2 u−1 u0 u1 u2 u3 u4 u5 u6 u7 . . . . . . Only finitely many changes

slide-78
SLIDE 78

25

P-recursive sequences: what are poles?

In practice, normalized robust solutions of an operator look like this: u−7 u−6 u−5 u−4 u−3 u−2 u−1 u0 u1 u2 u3 u4 u5 u6 u7 . . . . . . Only finitely many changes u is integral if val(un) ≥ 0 for all n

◮ Given L ∈ C[n]S with order r,

it has r independent normalized solutions u(1), . . . , u(r) in C((q))Z

◮ B ∈ C(n)S/L acts on those solutions ◮ Valuation of B at α ∈ Z : min of the valuations of B · u(i) at α ◮ B is integral iff it has non-negative valuation everywhere

slide-79
SLIDE 79

26

Van Hoeij’s algorithm for finding integral bases (recurrence case)

u(1), . . . , u(r) ∈ C((q))Z basis of solutions of L B1, . . . , Br ← 1, . . . , Sr−1 Bi · u(j) has val < 0 at α for some j ⇐ ⇒ ∀ j, (a1B1 + · · · + ad−1Bd−1 − Bd) ·u(j) has val > 0 at α Linear system of equations Nothing happens at all but finitely many of them (roots of the leading and trailing coefficients of L)

  • Input. L ∈ C[n]S with order r, α ∈ Z
  • Output. B1, . . . , Br basis of C(n)S/L integral at α
  • 1. B1, . . . , Br ← basis of C(n)S/L
  • 2. For d ∈ {1, . . . , r}:

3. While Bi is not integral at α 4. Bi ← (x − α)Bi 5. While there exists a1, . . . , ad−1 ∈ C such that A :=

1 x−α (a1B1 + · · · + ad−1Bd−1 − Bd) is integral at α

6. Bd ← A

  • 7. Return B1, . . . , Br

Local algorithm: exactly the same! Global algorithm: loop over all α ∈ Z

slide-80
SLIDE 80

27

Van Hoeij’s algorithm for recurrences on an example (1)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3 Basis of solutions in C((q))N: 1 2 3 4 5 · · · u 1 −1+O(q) −2q−1+O(1) −2q−1+O(1) · · · v 1 −2+O(q) −2+O(q) · · · w 1 −3+O(q) −6q−1+O(1) −6q−1+O(1) · · ·

slide-81
SLIDE 81

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-82
SLIDE 82

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-83
SLIDE 83

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-84
SLIDE 84

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-85
SLIDE 85

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-86
SLIDE 86

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-87
SLIDE 87

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-88
SLIDE 88

28

Van Hoeij’s algorithm for recurrences on an example (2)

Example: L = (n − 1)(n + 1) + (n − 3)S2 + (n − 1)S3, α = 3 B 1 S (n−3)S (n−3)S − 2 S − 2 n−3 S2 (B · u)3 −1+O(q) −2q−1+O(1) −2+O(q) q + O(q2) 1 + O(q) · · · (B · v)3 −2+O(q) −2q+O(q2) −2q+O(q2) −2+O(q) · · · (B · w)3 −3+O(q) −6q−1+O(1) −6+O(q) 3q+O(q2) 3+O(q) · · ·

slide-89
SLIDE 89

29

Application and perspectives

Why do we care?

◮ In the differential case, integral bases can be used to compute integrals ◮ We hope that in the recurrence case, they can be used to compute sums ◮ Future work: /s/hope/prove/

What if it is the wrong definition for that?

◮ The definitions and the algorithm generalize to valued vector spaces ◮ No particularly restricting hypothesis ◮ So if the definition is wrong, we only have to find the correct one!

References

◮ Kauers and Koutschan, ‘Integral D-finite Functions’ (2015) ◮ Chen, van Hoeij, Kauers and Koutschan, ‘Reduction-based Creative Telescoping for

Fuchsian D-finite Functions’ (2018)

◮ Chen, Du, Kauers and Verron, ‘Integral P-Recursive Sequences’ (2020) [preprint]

slide-90
SLIDE 90

29

Application and perspectives

Why do we care?

◮ In the differential case, integral bases can be used to compute integrals ◮ We hope that in the recurrence case, they can be used to compute sums ◮ Future work: /s/hope/prove/

What if it is the wrong definition for that?

◮ The definitions and the algorithm generalize to valued vector spaces ◮ No particularly restricting hypothesis ◮ So if the definition is wrong, we only have to find the correct one!

References

◮ Kauers and Koutschan, ‘Integral D-finite Functions’ (2015) ◮ Chen, van Hoeij, Kauers and Koutschan, ‘Reduction-based Creative Telescoping for

Fuchsian D-finite Functions’ (2018)

◮ Chen, Du, Kauers and Verron, ‘Integral P-Recursive Sequences’ (2020) [preprint]

Thank you for your atention