goals review administrivia ps1 typos computational models motivate via PIT \eps-approx counting motivate via PIT today perfect matching polynomial identity testing randomized algorithms tail bounds sampling administrivia CS598: Pseudorandomness miforbes.cs.illinois.edu/teaching/ ps1 will be out later today will email about it due 9/13 survey form fill it out perfect matching G=(L\cup R, E) bipartite graph draw it M\subseteq E matching if \deg_M (v)\le 1 perfect if deg = 1 Q. given graph, does it have a perfect matching? basic computational question in practice kidney exchanges assigning medical residents to hospitals in theory matroids max flow linear programming A. many efficient deterministic algorithms many *sequential* thm: algo for perf matching in polylog(n)-parallel-time w/ poly(n) processors won't define model of computation here Pf write down symbol adj matrix A A_{i,j}= 0, or x_{i,j} det A = \sum_{\sigma\in S_n} \sgn(\sigma) \prod_{i=1}^n A_{i,\sigma(i)} lem \det A =0 iff no perfect matching polynomial identity testing Q. "given" polynomial f, is it =0? test if polynomial is identically zero "simplifiy" in mathematica (which is based in champaign) what is a polynomial field F many variables list of coefficients equal to zero if all coeffs are zero compare to x^2-x over F_2 "given" for bday in the mail list of coefficients oracle algebraic circuit draw example randomized algo lem(SZ) intuition from univariate case => randomized polytime algo, choose |S|=2d Rmk: need to construct field extensions randomness is over coin tosses of algo Pf of perf-match do PIT for \det A \det A can be computed efficiently in parallel derandomization? this algorithm uses poly(n) random bits FGT16: reduced to O(\lg^2 n) random bits doing better is open! Fact: derandomizing PIT in general implies ckt lbs derandomizing PIT in special cases implies ckt lbs chasm at depth-3 derandomizing PIT can sometimes be done randomized algorithms randomized TM draw it, with random state equiv: rand() function returns random bit defn of P language L\subseteq {0,1}^\star is in P if poly(n)-time TM M why we study languages x\in L => M acc x =~ Pr[M acc x]=1 x\not L => M rej x =~ Pr[M acc x]=0 rmk: randomness only over coins, not over x defn of RP "randomized polytime" like NP one-sided error defn is robust to change in constant 1/2 coRP Cor: PIT is in coRP f =0 => f always reported as zero f \ne 0 => w/p 1/2 get non-zero defn of BPP two-sided error bounded-error probabilistic polytime defn is also robust Open P vs RP vs BPP tail bounds thm[chernoff] lem: 1/2-1/n error BPP => 1/2^n error BPP sampling sampling oracle problem ie, polling for an electio lem: solve via randomness lem: query lb rmk: doesn't show P\ne BPP approximation problems, not languages is an *oracle* problem today ps1 out tonight fill out survey form perfect matching poly ident testing randomized algorithms sampling next time no class Monday (labor day) approximate counting random walks