iop of proximity to algebraic geometry codes
play

IOP of Proximity to Algebraic Geometry codes Sarah Bordage Jade - PowerPoint PPT Presentation

IOP of Proximity to Algebraic Geometry codes Sarah Bordage Jade Nardi LIX, Ecole Polytechnique, Institut Polytechnique de Paris Inria November 19, 2020 https://eccc.weizmann.ac.il/report/2020/165/ Algebraic Geometry (AG) codes Let C be an


  1. IOP of Proximity to Algebraic Geometry codes Sarah Bordage Jade Nardi LIX, Ecole Polytechnique, Institut Polytechnique de Paris Inria November 19, 2020 https://eccc.weizmann.ac.il/report/2020/165/

  2. Algebraic Geometry (AG) codes Let C be an algebraic curve defined over a finite field F . Divisors. A divisor D on C is a formal sum of points D = � n P P . Its degree is deg D := � n P and support is Supp( D ) := { P ∈ C | n p � = 0 } . D ≤ D ′ if n P ≤ n ′ P for every P . A function f on C defines a principal divisor ( f ) := � P v P ( f ) P . � �� � valuation Riemann-Roch space of D . L C ( D ) = { f ∈ F ( C ) | ( f ) ≥ − D } ∪ { 0 } . Embedding of RR spaces: If D ≤ D ′ , then L C ( D ) ⊂ L C ( D ′ ) . AG codes Given P ⊂ C ( F ) of size n := |P| and a divisor D on C s.t. Supp( D ) ∩ P = ∅ , the AG code C = C ( C , P , D ) is defined as the image by ev : L C ( D ) → F n . We always choose D so that ev is injective: F n ! F P and C ( C , P , D ) = { f : P → F | f coincides with a fct in L C ( D ) } . 1 / 10

  3. Group action and Kani’s splitting of Riemann-Roch spaces Let C be a curve over a field F and let Γ = � γ � ≃ Z /m Z a group of automorphisms of C s.t gcd( m, | F | ) = 1 . Set the projection map π : C → C ′ := C / Γ . Take ζ ∈ F a primitive m th root of unity. • Γ acts on the functions on C : γ · f = f ◦ γ for any fct f on C . • There exists a function µ on C s.t. γ · µ = ζµ [Kani’86]. For any Γ -invariant divisor D on C , the action of Γ on L C ( D ) gives m − 1 � L C ( D ) j where L C ( D ) j := { g ∈ L C ( D ) | γ · g = ζ j g } . L C ( D ) = j =0 [Kani’86] L C ( D ) j ≃ µ j π ∗ ( L C ′ ( E j )) where E j := � 1 m π ∗ ( D + j ( µ )) � 1 is a divisor on C ′ . m − 1 � µ j π ∗ L C ′ ( E j ) Splitting of Riemann-Roch spaces: L C ( D ) = j =0 m − 1 � µ j f j ◦ π . For every f ∈ L C ( D ) , there exist m fcts f j ∈ L C ′ ( E j ) s.t. f = j =0 1 Notation : � n D � := �� nP � P , for a divisor D = � 1 n P P and integer n > 0 . n 2 / 10

  4. Kani’s result on C = P 1 �� 1 �� m − 1 � µ j π ∗ L C ′ [Kani’86]: L C ( D ) = mπ ∗ ( D + j ( µ )) . j =0 FRI context: For evaluation domain P = � [1 : ω ] � where ω has order 2 r . • γ : [ X 0 : X 1 ] �→ [ X 0 : − X 1 ] acts on P 1 and � γ � ≃ Z / 2 Z , • Define projection π : P 1 → P 1 by π [ X 0 : X 1 ] := [ X 2 0 : X 2 1 ] , Consider the RS code RS [ F , P , d + 1] viewed as the AG code C = C ( P 1 , P , dP ∞ ) , where P ∞ = [0 : 1] . Kani’s result with µ = x := X 1 X 0 ( γ · x = − x ) yields to ( ( x ) = [1 : 0] − P ∞ ) �� d � � �� d − 1 � � L P 1 ( dP ∞ ) = π ∗ L P 1 + xπ ∗ L P 1 P ∞ P ∞ , 2 2 � deg f 0 ≤ � d � , i.e. any polynomial f of degree ≤ d can be written f ( x ) = f 0 ( x 2 ) + xf 1 ( x 2 ) with deg f 1 ≤ � d − 1 � 2 . 2 → Proximity to C = C ( C , P , D ) reduced to proximity to C ′ = C ( P 1 , P ′ , � d � P ∞ ) where P ′ = π ( P ) . 2 Remark : For odd d , � d � = � d − 1 � , i.e. L P 1 ( dP ∞ ) is split into 2 “copies” of the same space. 2 2 3 / 10

  5. Using Kani’s result to fold Let C be a curve over a field F on which acts Γ ≃ Z /m Z , with the projection map π : C → C / Γ . FRI’s idea: proximity to an AG-code C = C ( C , P , D ) reduced to proximity to an AG-code C ′ = C ( C / Γ , P ′ , D ′ ) m − 1 � [Kani’86] µ j ⇒ ◦ π . We need: – a Γ - invariant divisor D = f = f j ∈ ∈ j =1 L C ( D ) L C / Γ ( E j ) – an evaluation set P = union of Γ -orbits of size | Γ | ( Γ acts freely on P ). Take P ′ = π ( P ) ( |P ′ | = |P| /m ) and D ′ is a divisor on C / Γ s.t. L C / Γ ( D ′ ) ⊇ L C / Γ ( E j ) . 1. Split f : P → F into m functions f j : P ′ → F . m − 1 � 2. For any z ∈ F , define folding of f as the function Fold [ f, z ] : P ′ → F s.t. Fold [ f, z ] = z j f j . j =0 → Fold [ · , z ] ( C ) ⊆ C ′ 4 / 10

  6. The folding operator m − 1 � z j f j : (First attempt) If we define Fold [ f, z ] = j =0 � Completeness: Fold [ · , z ] ( C ) ⊆ C ′ . � Locality: For any P ∈ P ′ , compute Fold [ f, z ] ( P ) with m queries to f . interpolate the set of m points � ( µ ( Q ) , f ( Q )) | Q ∈ π − 1 ( { P } ) � . If ∆( f, C ) > δ , then ∆( Fold [ f, z ] , C ′ ) > δ ′ (w.h.p.). � Distance preservation: ∈ L ( D ′ ) \ L ( E j ) ! We need to ensure that f j / 5 / 10

  7. The folding operator m − 1 � z j f j : (First attempt) If we define Fold [ f, z ] = j =0 � Completeness: Fold [ · , z ] ( C ) ⊆ C ′ . � Locality: For any P ∈ P ′ , compute Fold [ f, z ] ( P ) with m queries to f . interpolate the set of m points � ( µ ( Q ) , f ( Q )) | Q ∈ π − 1 ( { P } ) � . If ∆( f, C ) > δ , then ∆( Fold [ f, z ] , C ′ ) > δ ′ (w.h.p.). � Distance preservation: ∈ L ( D ′ ) \ L ( E j ) ! We need to ensure that f j / Define balancing functions ν j ∈ F ( C / Γ) s.t. h ∈ L ( E j ) iff both h ∈ L ( D ′ ) and ν j h ∈ L ( D ′ ) . (on P 1 : if deg ν = 1 , then deg h ≤ d − 1 iff deg h, deg νh ≤ d ) We assume there exists ν j ∈ F ( C / Γ) such that ( ν j ) ∞ = D ′ − E j . (for simplicity, take D ′ = E 0 .) → Need to carefully define D ′ , otherwise such functions ν j may not exist. − 5 / 10

  8. The folding operator m − 1 � z j f j : (First attempt) If we define Fold [ f, z ] = j =0 � Completeness: Fold [ · , z ] ( C ) ⊆ C ′ . � Locality: For any P ∈ P ′ , compute Fold [ f, z ] ( P ) with m queries to f . interpolate the set of m points � ( µ ( Q ) , f ( Q )) | Q ∈ π − 1 ( { P } ) � . If ∆( f, C ) > δ , then ∆( Fold [ f, z ] , C ′ ) > δ ′ (w.h.p.). � Distance preservation: ∈ L ( D ′ ) \ L ( E j ) ! We need to ensure that f j / Define balancing functions ν j ∈ F ( C / Γ) s.t. h ∈ L ( E j ) iff both h ∈ L ( D ′ ) and ν j h ∈ L ( D ′ ) . (on P 1 : if deg ν = 1 , then deg h ≤ d − 1 iff deg h, deg νh ≤ d ) We assume there exists ν j ∈ F ( C / Γ) such that ( ν j ) ∞ = D ′ − E j . (for simplicity, take D ′ = E 0 .) → Need to carefully define D ′ , otherwise such functions ν j may not exist. − (Final attempt) For any ( z 1 , z 2 ) ∈ F 2 , define Fold [ f, ( z 1 , z 2 )] : P ′ → F s.t. m − 1 � m − 1 � z j z j Fold [ f, ( z 1 , z 2 )] = 1 f j + 2 ν j f j . j =0 j =1 5 / 10

  9. Foldable AG codes An AG code C 0 = C ( C 0 , P 0 , D 0 ) is said to be foldable if we can repeat the previous process: 1. There exists a large solvable group G ∈ Aut( C 0 ) acting freely on P 0 , G = G 0 B G 1 B · · · B G r = 1 composition series → Γ i := G i / G i +1 ≃ Z /p i Z → Sequence of curves ( C i ) s.t. C i +1 := C i / Γ i → Sequence of evaluation points ( P i ) s.t. P i +1 = π i ( P i ) |P i +1 | = |P i | /p i 2. There exists a “nice” sequence of divisors ( D i ) , i.e. for each i : – D i is supported by Γ i -fixed points, – for every 0 ≤ j < p i , E i,j ≤ D i +1 , ([Kani’86] L ( D i ) is split into p i smaller spaces L ( E i,j ) ) – for every 0 ≤ j < p i , there exists ν i +1 ,j ∈ F ( C i +1 ) s.t. ( ν i +1 ,j ) ∞ = D i +1 − E i,j . A foldable AG code C 0 = C ( C 0 , P 0 , D 0 ) induces a sequence of AG codes ( C i = C ( C i , P i , D i )) . 6 / 10

  10. Overview of the AG-IOPP f 0 COMMIT Phase ( F , C 0 , P 0 , D 0 ) Prover Verifier z 0 ← F 2 f 1 f 1 = Fold [ f 0 , z 0 ] z 1 ← F 2 f 2 = Fold [ f 1 , z 1 ] f 2 . . . . . . z r − 1 ← F 2 f r f r = Fold [ f r − 1 , z r − 1 ] Final test: f r ∈ C r 7 / 10

  11. Overview of the AG-IOPP f 0 QUERY Phase Round consistency tests: ( F , C 0 , P 0 , D 0 ) Sample Q 0 ∈ P 0 , Define query path ( Q 1 , . . . , Q r ) s.t. Q i +1 = π i ( Q i ) . Prover Verifier z 0 ← F 2 ? f 1 f 1 ( Q 1 ) = Fold [ f 0 , z 0 ] ( Q 1 ) z 1 ← F 2 ? f 2 f 2 ( Q 2 ) = Fold [ f 1 , z 1 ] ( Q 2 ) . . . . . . z r − 1 ← F 2 ? f r f r ( Q r ) = Fold [ f r − 1 , z r − 1 ] ( Q r ) ? Final test: f r ∈ C ( C r , P r , D r ) 7 / 10

  12. Overview of the AG-IOPP f 0 ( F , C 0 , P 0 , D 0 ) Prover Verifier z 0 ← F 2 Completeness: f 1 If f 0 ∈ C 0 , V accepts with proba 1. z 1 ← F 2 f 2 Soundness: (relies on [BKS18] and [BGKS19]) If f 0 is δ -far from C 0 , V accepts with proba . . err ( δ ) < err commit + ( err query ( δ )) α . α : repetition parameter z r − 1 ← F 2 f r 7 / 10

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend