Hitting Sets for UPT Circuits Ramprasad Saptharishi and Anamay Tengse TIFR, Mumbai, India 6th March 2018
Non-commutative models + − 0 . 5 3 ◮ x 1 x 2 x 1 � = x 1 x 1 x 2 monomials ∼ words × × × ◮ Introduced by Nisan [N91] × × ◮ Circuits: No. of nodes x 1 x 2 x 3 x 4 ◮ ABPs: Width, No. of layers ℓ 3 ℓ 6 ℓ 1 ℓ 4 s t ℓ 2 ℓ 7 ℓ 5
Non-commutative models + − 0 . 5 3 ◮ x 1 x 2 x 1 � = x 1 x 1 x 2 monomials ∼ words × × × ◮ Introduced by Nisan [N91] × × ◮ Circuits: No. of nodes x 1 x 2 x 3 x 4 ◮ ABPs: Width, No. of layers ◮ ABPs � Circuits ℓ 3 ℓ 6 ℓ 1 ℓ 4 [N91] s t ℓ 2 ℓ 7 ℓ 5
Non-commutative models + − 0 . 5 3 ◮ x 1 x 2 x 1 � = x 1 x 1 x 2 monomials ∼ words × × × ◮ Introduced by Nisan [N91] × × ◮ Circuits: No. of nodes x 1 x 2 x 3 x 4 ◮ ABPs: Width, No. of layers ◮ ABPs � Circuits ℓ 3 ℓ 6 ℓ 1 ℓ 4 [N91] s t ℓ 2 ℓ 7 ℓ 5 Homogeneous circuits: Each gate is homogeneous Homogeneous ABPs: Each of the ℓ i s are homogeneous
Hitting sets for Non-commutative circuits Given a non-commutative circuit class C ⊆ F � x � , a set of matrices H is called a hitting set for C if a nonzero C ∈ C evaluates to a nonzero value on at least one input from H . Note: Variables from x can be thought of as matrices with commuting variables from y as entries. Strategy : Substitute univariates of low degree, interpolate. φ : y → F [ t ].
Hitting sets for Non-commutative circuits Given a non-commutative circuit class C ⊆ F � x � , a set of matrices H is called a hitting set for C if a nonzero C ∈ C evaluates to a nonzero value on at least one input from H . Note: Variables from x can be thought of as matrices with commuting variables from y as entries. Strategy : Substitute univariates of low degree, interpolate. φ : y → F [ t ]. For this talk: ◮ Non-commutative circuits, ABPs ◮ WLOG models will be homogeneous
Parse Trees and Unambiguity Parse tree: Start from root, one child of +, all children of × + + + × × × × × × × × × x 1 x 2 x 3 x 4 (a) (b) (c)
Parse Trees and Unambiguity Parse tree: Start from root, one child of +, all children of × + + + × × × × × × × × × x 1 x 2 x 3 x 4 (a) (b) (c) ◮ Unambiguous or Unique Parse Tree (UPT) [LMP16] all parse trees have the same shape. ◮ ABPs � UPT � Circuits [LMP16]
ABPs as UPT circuits ℓ 3 ℓ 1 ℓ 6 ℓ 4 s t ℓ 2 ℓ 7 ℓ 5
ABPs as UPT circuits ℓ 3 ℓ 1 ℓ 6 ℓ 4 s t ℓ 2 ℓ 7 ℓ 5 + × × + + × × × ℓ 1 ℓ 3 ℓ 6 ℓ 4 ℓ 2 ℓ 5 ℓ 7
ABPs as UPT circuits ℓ 3 ℓ 1 ℓ 6 ℓ 4 s t ℓ 2 ℓ 7 ℓ 5 + + × × × + + + × × × × ℓ 1 ℓ 3 ℓ 6 ℓ 4 ℓ 2 ℓ 5 ℓ 7
ABPs as UPT circuits ℓ 3 ℓ 1 ℓ 6 ℓ 4 s t ℓ 2 ℓ 7 ℓ 5 + + × × × + + + × × × × ℓ 1 ℓ 3 ℓ 6 ℓ 4 ℓ 2 ℓ 5 ℓ 7 ◮ ABPs are UPT circuits with left-skew tree.
Properties of UPT circuits [LMP16] 1. WLOG each gate appears in a fixed position in the tree. Can be done with a d blow-up. 2. Natural notion of width of a position. No. of gates appearing in that position. Analogous to width of an ABP. 3. All product gates are position disjoint . Consequence of 1. Similar to edges in different layer segments in an ABP.
Properties of UPT circuits [LMP16] 1. WLOG each gate appears in a fixed position in the tree. Can be done with a d blow-up. 2. Natural notion of width of a position. No. of gates appearing in that position. Analogous to width of an ABP. 3. All product gates are position disjoint . Consequence of 1. Similar to edges in different layer segments in an ABP. Plan: ◮ Overview of hitting sets for ABPs. ◮ Extend ideas to UPT circuits.
Quick survey ◮ Nisan’s characterization for ABPs [N91] .
Quick survey ◮ Nisan’s characterization for ABPs [N91] . ◮ [RS05] gave White box PIT for ABPs in poly( n ).
Quick survey ◮ Nisan’s characterization for ABPs [N91] . ◮ [RS05] gave White box PIT for ABPs in poly( n ). ◮ [FS13] Known order hitting sets for ROABPs in n O (log n ) .
Quick survey ◮ Nisan’s characterization for ABPs [N91] . ◮ [RS05] gave White box PIT for ABPs in poly( n ). ◮ [FS13] Known order hitting sets for ROABPs in n O (log n ) . ◮ [AGKS15] Unknown order hitting sets for ROABPs in n O (log n ) . Basis Isolating Weight Assignment (BIWA).
Quick survey ◮ Nisan’s characterization for ABPs [N91] . ◮ [RS05] gave White box PIT for ABPs in poly( n ). ◮ [FS13] Known order hitting sets for ROABPs in n O (log n ) . ◮ [AGKS15] Unknown order hitting sets for ROABPs in n O (log n ) . Basis Isolating Weight Assignment (BIWA). ◮ Hitting sets for models related to ROABPs ◮ Constant width, known order in poly( n ) [GKS16] . ◮ Sum of c ROABPs: white box in poly( n ), hitting sets n O (log n ) [GKST15] (Nisan’s characterization + BIWA).
Quick survey ◮ Nisan’s characterization for ABPs [N91] . ◮ [RS05] gave White box PIT for ABPs in poly( n ). ◮ [FS13] Known order hitting sets for ROABPs in n O (log n ) . ◮ [AGKS15] Unknown order hitting sets for ROABPs in n O (log n ) . Basis Isolating Weight Assignment (BIWA). ◮ Hitting sets for models related to ROABPs ◮ Constant width, known order in poly( n ) [GKS16] . ◮ Sum of c ROABPs: white box in poly( n ), hitting sets n O (log n ) [GKST15] (Nisan’s characterization + BIWA). ◮ [LMP16] introduced UPT circuits ◮ Extend Nisan’s characterization ◮ White box in poly( n )
Quick survey ◮ Nisan’s characterization for ABPs [N91] . ◮ [RS05] gave White box PIT for ABPs in poly( n ). ◮ [FS13] Known order hitting sets for ROABPs in n O (log n ) . ◮ [AGKS15] Unknown order hitting sets for ROABPs in n O (log n ) . Basis Isolating Weight Assignment (BIWA). ◮ Hitting sets for models related to ROABPs ◮ Constant width, known order in poly( n ) [GKS16] . ◮ Sum of c ROABPs: white box in poly( n ), hitting sets n O (log n ) [GKST15] (Nisan’s characterization + BIWA). ◮ [LMP16] introduced UPT circuits ◮ Extend Nisan’s characterization ◮ White box in poly( n ) ◮ [LLS17] extend white box results of [GKST15] .
Quick survey ◮ Nisan’s characterization for ABPs [N91] . ◮ [RS05] gave White box PIT for ABPs in poly( n ). ◮ [FS13] Known order hitting sets for ROABPs in n O (log n ) . ◮ [AGKS15] Unknown order hitting sets for ROABPs in n O (log n ) . Basis Isolating Weight Assignment (BIWA). ◮ Hitting sets for models related to ROABPs ◮ Constant width, known order in poly( n ) [GKS16] . ◮ Sum of c ROABPs: white box in poly( n ), hitting sets n O (log n ) [GKST15] (Nisan’s characterization + BIWA). ◮ [LMP16] introduced UPT circuits ◮ Extend Nisan’s characterization ◮ White box in poly( n ) ◮ [LLS17] extend white box results of [GKST15] . ◮ This work : BIWA for UPT circuits, extends hitting sets of [AGKS15,GKST15,GKS15] .
Coefficient span [RS05,FS13] f 1 u 1 . . . f i u i s t . . . u w f w Preserve nonzeroness of an arbitrary linear combination of f i s. ← f 1 → . ∈ F [ y ] k ≡ F k [ y ] . M f = ← . → ← → f w
Coefficient span [RS05,FS13] f 1 u 1 . . . f i u i s t . . . u w f w Preserve nonzeroness of an arbitrary linear combination of f i s. ← f 1 → . ∈ F [ y ] k ≡ F k [ y ] . M f = ← . → ← → f w Consider φ : y → F [ t 1 , . . . , t k ] ( k ∼ log n ) Such a φ sends columns of M f to n O ( k ) columns.
Coefficient span [RS05,FS13] f 1 u 1 . . . f i u i s t . . . u w f w Preserve nonzeroness of an arbitrary linear combination of f i s. ← f 1 → . ∈ F [ y ] k ≡ F k [ y ] . M f = ← . → ← → f w Consider φ : y → F [ t 1 , . . . , t k ] ( k ∼ log n ) Such a φ sends columns of M f to n O ( k ) columns. [FS13] A φ that preserves colSpan( M f ) suffices. ColSpan( M f ) = CoeffSpan( f 1 , . . . , f w )
Coefficient span [RS05,FS13] f 1 u 1 . . . f i u i s t . . . u w f w [FS13] A φ that preserves colSpan( M f ) suffices. Let ( wt 1 , . . . , wt k ) : y → [ N ] k and φ wt be such that φ wt : y i �→ t wt 1 ( y i ) · · · t wt k ( y i ) . 1 k [AGKS15] If wt is a basis isolating weight assignment (BIWA) for M f , then φ wt will preserve CoeffSpan. How do we construct a BIWA?
Basis Isolation [AGKS15] g i , k s h k , j s s 1 v 1 t 1 . . . . . . . . . v k s i t j . . . . . . . . . s w v w t w M f M g M h ← f 1 , 1 → ← g 1 , 1 → ← h 1 , 1 → . . . . . . ← . → ← . → ← . → ← f w , w → ← g w , w → ← h w , w → Define V f , V g , V h , where V ∗ = rowSpan( M ∗ ).
Basis Isolation [AGKS15] g i , k s h k , j s s 1 v 1 t 1 . . . . . . . . . v k s i t j . . . . . . . . . s w v w t w M f M g M h ← f 1 , 1 → ← g 1 , 1 → ← h 1 , 1 → . . . . . . ← . → ← . → ← . → ← f w , w → ← g w , w → ← h w , w → Define V f , V g , V h , where V ∗ = rowSpan( M ∗ ). � f i , j = ∈ V f ⊆ V g ⊗ V h g i , k h k , j k ∈ [ w ]
Recommend
More recommend