## Interactive Proofs

Given: function $f$ mapping ${0,1}_{n}$ to finite range $R$, a k-message IP for $f$

- probabilistic verifier $V$ time $poly(n)$.

what does it mean to be probabilistic?

- deterministic prover $P$
- P and V exchange messages $m_{i}∀i∈[0,k]$ alternatively. Both work as next-message-computing algorithms, i.e. if it’s V’s turn, it’s algorithm is run on $x,m_{1},…,m_{i−1}$.

Properties:

- Completeness: For every $x∈{0,1}_{n}$: $Pr[out(V,x,r,P)=1]≥1−δ_{c}$
- Soundness: For every $x∈{0,1}_{n}$ and every deterministic prover strategy $P_{′}$, if $P_{′}$ sends a value $y=f(x)$, then $Pr[out(V,x,r,P_{′})=1]≤δ_{s}$

An IP is valid if $δ_{c},δ_{s}≤31 $

what is the difference between message and rounds?

## Argument system

- Statistical soundness: computationally unbounded provers $P_{′}$
- computational soundness: prover runs in poly time

Argument system for function $f$ is an IP for $f$ where adversarial prover strategy only runs in poly time.

Why argument systems perform better than IP?

Because due to adversarial prover being computationally bounded, argument systems can use cryptographic primitives which can’t be broken by polynomial time adversaries. Thus, argument systems often have reusability, public verifiability, etc.

- Perfect vs Imperfect Completeness: Perfect completeness refers to $δ_{c}=0$ which is what most proof systems utilise.
- Soundness error: $δ_{s}≤∣F∣1 $ is what most proof systems target or able to achieve. $δ_{s}≤31 $ is merely a convention.
- Public vs Private randomness: When verifiers randomness is internal, its called Private randomness, and when Verifiers randomness is made public, i.e. coin tosses can be seen by prover as soon as it is done, then the randomness is public.
- Public randomness can utilise cryptographic primitives such as Fiat-Shamir transform to convert an interactive argument system non-interactive.

- Deterministic vs probabilistic provers: In IPs, soundness is required to hold against deterministic adversarial prover. Note that: if there is a probabilistic cheating prover $P_{′}$, then there is a deterministic prover strategy achieving the same.

## IP for language vs functions

We’ve so far defined IP for function $f$, complexity theorists often work in the concept of language. A decision problem can be associated with subset $L∈{0,1}_{n}$ where this subset is termed as language.

IP for language, given a public input $x∈{0,1}_{n}$, let $f_{L}:x→{0,1}$ be the corresponding decision problem. So, $V$ outputs $f_{L}(x)=0$, if x not in $L$, and 1 if $f_{L}(x)=1$. Difference between IP for language and function is that for language, there doesn’t need to be a valid proof if $f_{L}(x)=0$, but for function, there does need to be a valid proof strategy that convinces the verifier.

### NP and IP

- IP: class of all languages solvable by an interactive, randomised proof system with polynomial time verifier.
- NP: class of language obtained by restricting IP to be non-interactive and deterministic

## Schwartz Zippel Lemma

## Multilinear extensions

Also introduces algorithm for evaluation multilinear extensions in $v$ variables in $O(2_{v})$.