1 / 21

Algebraic Algorithms

Algebraic Algorithms. Definition. Combinatorial methods : Tries to construct the object explicitly piece-by-piece . Algebraic methods : Implicitly sieves for the object by evaluating a sum . The 4cycle Detection Problem. 4cycle detection.

terri
Download Presentation

Algebraic Algorithms

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. AlgebraicAlgorithms

  2. Definition Combinatorialmethods: Tries to construct the objectexplicitlypiece-by-piece. Algebraicmethods: Implicitlysieves for the object by evaluating a sum.

  3. The 4cycle Detection Problem

  4. 4cycle detection • Init a booleannxn table T(:,:)=false. • For eachvertex v • For each pair of neighborsu,w of v • IfT(u,w) thenreturntrue and stop • T(u,w)=true • End • End • Returnfalse

  5. The TriangleDetection Problem

  6. Square MatrixMultiplication • What is the computationalcomplexity in terms of number of scalar operations (*,+) of computing the product of twonxn-matrices A and B? • From definition Cij=SkAikBkjwe get O(n3) time. • There is a (highlytheoretical) O(n2.373) time algorithm!

  7. Strassen’salgorithm

  8. Strassen’salgorithm T(n)=cn2+7T(n/2)=cn2+7c(n/2)2+72T(n/4)= cn2+7c(n/2)2+72c(n/4)2+73T(n/8)=…= cn2(1+7/4+(7/4)2+…+(7/4)log2(n))+7log2(n)= O(nlog2(7))=O(n2.81).

  9. VerifyingMatrixProducts • Given threenxnmatrices A,B, and C you want to verify that AB=C. • Can you do this fasterthanrecomputing the matrixproduct?

  10. VerifyingMatrixProducts • Idea: Project the differencematrix on a randomly chosen 0/1-vector r. • If (AB-C)r=A(Br)-Cr=0, weconclude that AB=C, otherwisewedeemthem different. • No false negatives. • False positives with probability <=1/2. Note that this is an O(n2) time algorithm!

  11. VerifyingMatrixProducts (AB-C)= r= r1 e1 e2 e3 e4 r2 r3 r4

  12. PolynomialIdentity Testing • Given ”black box” multivariatepolynomial P, is P identicallyzero or not? • Think of polynomial P as given by arithmeticcircuit: + x x x x + + + + + + + + x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14

  13. The Schwartz Zippel Lemma • Schwartz-Zippel Lemma: Let P(x1,x2,…,xn) be a multivariatenon-zeropolynomial of total degree d over a finite field F. For uniformly and independentlysampledvalues r1,r2,…,rn in F:

  14. BipartiteMatching Pick as many end-pointdisjointedges as possible.

  15. BipartiteMatching: Augmentationpaths Classic matchingalgorithm: Usedfs to findaugmentationpaths.

  16. BipartiteMatching: Biadjacencymatrix 1 A B D C A E 1 2 B 2 3 C 3 4 D 4 5 5 E

  17. Determinants B D C A E 1 2 In fields of characteristictwo: 3 4 5

  18. Fields of characteristictwo F4

  19. Determinants with indeterminates B D C A E 1 2 3 4 5

  20. Algorithm B D C A 1. Replaceindeterminates by randomvaluesxij=rij. 2. Compute the determinant. 3. If it is non-zeroreturnYesotherwise No. E 1 2 3 4 5

  21. General Matchings 2 4 3 5 1 6 1 2 1 2 3 3 4 4 5 6 5 6

More Related