Additive vs. Multiplicative Notation in Elliptic Curve Cryptography
Working with Elliptic Curve Crypto, there are 2 (main) different notations - additive and multiplicative, representing different ways to think about group operations. Which one is better? We’ll see the difference and identify which one is better for which protocol.
TLDR: Side-by-Side Comparison
Operation | Additive Notation | Multiplicative Notation | Meaning |
---|---|---|---|
Group Operation | Combine two group elements | ||
Scalar Action | Add to itself times | ||
Identity Element | Neutral element | ||
Inverse | or | Element that gives identity when combined | |
Pedersen Commitment | Hiding and binding commitment | ||
Pairing | Bilinear map evaluation |
Understanding Scalar Operations
In Additive Notation
When we write , we’re literally describing: ( times)
For example,
This matches the geometric intuition of point addition on elliptic curves. When we compute , we’re performing point additions.
In Multiplicative Notation
When we write , we’re using notation from finite field multiplication, but it represents the same operation: ( times)
For example:
- (because )
To understand this intuitively, consider regular integers:
Group Structure and Fields
Additive Groups ()
- Elements are points on elliptic curves
- Operations are geometric point additions
- Scalar multiplication is repeated addition
Multiplicative Target Group ()
- Elements are in a finite field
- Operations are field multiplications
- Exponentiation is repeated multiplication
Pairing Maps
In additive notation:
In multiplicative notation:
Inverse Operations and Their Representations
Additive Group Inverses
In additive notation, inverse operations are geometrically intuitive:
- represents the reflection of point over the x-axis
- represents scalar multiplication by the negative value
- For any point : (the point at infinity)
This matches the geometric interpretation on elliptic curves where inverse points sum to infinity.
Multiplicative Group Inverses
In multiplicative notation, we have equivalent concepts expressed differently:
- or represents the group inverse of
- or represents exponentiation by the negative value
- For any element : (the multiplicative identity)
Comparing Inverse Operations
Consider scalar multiplication by followed by :
Additive Notation:
Multiplicative Notation:
Pedersen Commitments and Homomorphic Properties
Additive Notation
Basic commitment:
Homomorphic addition of commitments:
Rerandomization with :
Multiplicative Notation
Basic commitment:
Homomorphic addition (via multiplication):
Rerandomization with :
Generator Representations in Both Worlds
Additive Setting
For groups :
- Base generators: ,
- Multiple generators:
- Commitment key:
Multiplicative Setting
For groups :
- Base generators: ,
- Multiple generators:
- Commitment key:
Advantages of Each Notation
Additive Notation (+)
- Mirrors the geometric nature of elliptic curves
- Makes scalar quantities visually prominent
- Clearer for understanding point arithmetic
- Better for implementing curve operations
Multiplicative Notation (×)
- More compact for complex expressions
- Natural for pairing-based cryptography
- Familiar from classical cryptography
- Simpler for showing homomorphic properties
Examples from papers
Creative Notations in Academic Literature
Example: PLONK’s SRS Notation System
The PLONK paper uses a hybrid notation where and denotes elements and . It handles additive notation nicely when there are longer strings of generators like a structured reference string.
Concept | PLONK Notation | Standard Additive | Standard Multiplicative |
---|---|---|---|
Vector of powers | {} | ||
Pairing check |
Key Insights
- The subscript notation provides immediate group context without needing to specify generators
- This becomes particularly powerful when dealing with polynomial commitments where you have many powers of the same element
Case Study: Strengths and Limitations of PLONK-style Notation
Advantage: Polynomial Commitments and Power Series
When working with polynomial commitments or structured reference strings, PLONK’s notation shines. Consider a commitment to a polynomial of degree d:
Standard multiplicative: where are the polynomial coefficients. Notice the exponents are the important things and pretty hard to see
Standard additive:
PLONK style: or simply
The elegance becomes even more apparent when expressing KZG opening proofs:
PLONK style:
Standard:
Limitation: Multi-Generator Commitments
However, when dealing with schemes with different generators like e.g. Pedersen Commitment Schemes, the notation isn’t as clean, e.g. a Pedersen vector commitment:
Standard multiplicative (clean):
Standard additive (clean):
PLONK style (awkward): (Note: This isn’t even standard - we’d need to invent new subscript notation)
Real-World Example from Vector Commitments
Consider the opening proof for a vector commitment where each position has a distinct generator. In your standard Pedersen-style commitment:
Multiplicative (natural):
PLONK style would require something like:
This clearly shows why papers like Groth16 and Bulletproofs stick to multiplicative notation for their vector commitments, while papers focused on polynomial commitments (like PLONK, Marlin, etc.) often prefer the bracket notation.
The key insight here, which I believe Jens Groth articulated well in his 2016 work, is that notation should serve the mathematical structure of your protocol. When your protocol primarily deals with powers of a single generator, PLONK-style notation is elegant. When you’re working with vector commitments or multiple independent generators, traditional multiplicative or additive notation is often clearer.