def
definition
restrict
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.Complexity.BalancedParityHidden on GitHub at line 20.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
used by
-
aestronglyMeasurable_galerkinForcing_mode_of_continuous -
DuhamelKernelDominatedConvergenceAt -
duhamelKernelDominatedConvergenceAt_of_forcing -
ForcingDominatedConvergenceAt -
ForcingDominatedConvergenceAt -
GalerkinForcingDominatedConvergenceHypothesis -
of_convectionNormBound -
omega_n_queries -
recognition_lower_bound_sat -
restrict_enc_false -
restrict_enc_true -
restrict_extendMask -
circuit_cannot_sense_moat -
CircuitLedgerCert -
CircuitSeparation -
no_sublinear_universal_decoder -
ledger_forces_separation -
PvsNPDissolution -
rhat_is_non_natural -
rs_adversarial_lower_bound -
RSATSeparation -
bet1_boundaryTerm_integrable_of_L2_mul_r -
bet1_of_bet1Alt -
rm2Closed_of_coerciveL2Bound -
sobolev_H1_half_line_decay -
rigid_rotation_energy_lower_bound -
exists_shift_ae_abs_sub_le_of_oscOn_Icc_exhaustion -
oscOn -
oscOn_Icc_le_drop_of_antitone -
vacuum_has_energy
formal source
17 funext i; simp [enc]
18
19/-- Restrict a full word to a queried index set `M`. -/
20def restrict (f : Fin n → Bool) (M : Finset (Fin n)) : {i // i ∈ M} → Bool :=
21 fun i => f i.val
22
23@[simp] lemma restrict_enc_false (R : Fin n → Bool) (M : Finset (Fin n)) :
24 restrict (n:=n) (enc false R) M = restrict (n:=n) R M := by
25 funext i; simp [restrict, enc]
26
27@[simp] lemma restrict_enc_true (R : Fin n → Bool) (M : Finset (Fin n)) :
28 restrict (n:=n) (enc true R) M = (fun i => ! (restrict (n:=n) R M i)) := by
29 funext i; simp [restrict, enc]
30
31/-- Extend a partial assignment on `M` to a full mask by defaulting to `false` off `M`. -/
32def extendMask (M : Finset (Fin n)) (a : {i // i ∈ M} → Bool) : Fin n → Bool :=
33 fun i => if h : i ∈ M then a ⟨i, h⟩ else false
34
35@[simp] lemma extendMask_in (M : Finset (Fin n)) (a : {i // i ∈ M} → Bool) {i : Fin n} (h : i ∈ M) :
36 extendMask (n:=n) M a i = a ⟨i, h⟩ := by
37 simp [extendMask, h]
38
39@[simp] lemma extendMask_notin (M : Finset (Fin n)) (a : {i // i ∈ M} → Bool) {i : Fin n} (h : i ∉ M) :
40 extendMask (n:=n) M a i = false := by
41 simp [extendMask, h]
42
43@[simp] lemma restrict_extendMask (M : Finset (Fin n)) (a : {i // i ∈ M} → Bool) :
44 restrict (n:=n) (extendMask (n:=n) M a) M = a := by
45 funext i
46 simp [restrict, extendMask]
47
48/-- Any fixed-view decoder on a set `M` of queried indices can be fooled by a suitable `(b,R)`. -/
49 theorem adversarial_failure (M : Finset (Fin n))
50 (g : (({i // i ∈ M} → Bool)) → Bool) :