Skip to content

Commit 11d2ed4

Browse files
Fix/incorrect polynomial evaluation (#539)
* fix: fixed point shifting bn254 * feat: code gen * fix: moved err outside of the if scope
1 parent 703a260 commit 11d2ed4

File tree

8 files changed

+48
-40
lines changed

8 files changed

+48
-40
lines changed

ecc/bls12-377/fr/iop/polynomial.go

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ecc/bls12-381/fr/iop/polynomial.go

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ecc/bls24-315/fr/iop/polynomial.go

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ecc/bls24-317/fr/iop/polynomial.go

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ecc/bn254/fr/iop/polynomial.go

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ecc/bw6-633/fr/iop/polynomial.go

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ecc/bw6-761/fr/iop/polynomial.go

Lines changed: 6 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/generator/iop/template/polynomial.go.tmpl

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -152,19 +152,20 @@ func (p *Polynomial) Evaluate(x fr.Element) fr.Element {
152152
}
153153

154154
var g fr.Element
155+
gen, err := fft.Generator(uint64(p.size))
156+
if err != nil {
157+
panic(err)
158+
}
155159
if p.shift <= 5 {
156-
gen, err := fft.Generator(uint64(p.size))
157-
if err != nil {
158-
panic(err)
159-
}
160160
g = smallExp(gen, p.shift)
161161
x.Mul(&x, &g)
162162
return p.polynomial.evaluate(x)
163163
}
164164

165165
bs := big.NewInt(int64(p.shift))
166-
g = *g.Exp(g, bs)
166+
g = *g.Exp(gen, bs)
167167
x.Mul(&x, &g)
168+
168169
return p.polynomial.evaluate(x)
169170
}
170171

0 commit comments

Comments
 (0)