Documentation
Complexitylib
.
SAT
.
CircuitSatisfiability
.
Internal
Search
return to top
source
Imports
Init
Complexitylib.Classes.NP
Complexitylib.Classes.P.Cobham
Complexitylib.Classes.P.DecisionFn
Complexitylib.Classes.P.Defs
Complexitylib.Classes.P.Pairing
Complexitylib.SAT.CircuitSatisfiability.Defs
Complexitylib.SAT.Internal.LinearGuessVerify
Complexitylib.Classes.PPoly.Uniform.Containment
Complexitylib.Models.TuringMachine.Subroutines.PairValidate
Complexitylib.Classes.P.Cobham.Internal.StringOps
Imported by
Complexity
.
CircuitSAT
.
witness_pair_iff_internal
Complexity
.
CircuitSAT
.
pair_mem_language_iff_internal
Complexity
.
CircuitSAT
.
witness_length_le_internal
Complexity
.
CircuitSAT
.
pairLang_witness_mem_P_internal
Complexity
.
CircuitSAT
.
language_mem_NP_internal
Complexity
.
CircuitSAT
.
extensionWitness_pair_iff_internal
Complexity
.
CircuitSAT
.
pair_mem_extensionLanguage_iff_internal
Complexity
.
CircuitSAT
.
extensionWitness_length_le_internal
Complexity
.
CircuitSAT
.
pairLang_extensionWitness_mem_P_internal
Complexity
.
CircuitSAT
.
extensionLanguage_mem_NP_internal
Padded circuit satisfiability -- proof internals
#
source
theorem
Complexity
.
CircuitSAT
.
witness_pair_iff_internal
(
code
ruler
witness
:
List
Bool
)
:
Witness
(
pair
code
ruler
)
witness
↔
witness
.
length
=
ruler
.
length
∧
CircuitCode.evalFamilyCode
code
witness
=
some
true
source
theorem
Complexity
.
CircuitSAT
.
pair_mem_language_iff_internal
(
code
ruler
:
List
Bool
)
:
pair
code
ruler
∈
language
↔
∃ (
witness
:
List
Bool
),
witness
.
length
=
ruler
.
length
∧
CircuitCode.evalFamilyCode
code
witness
=
some
true
source
theorem
Complexity
.
CircuitSAT
.
witness_length_le_internal
(
query
witness
:
List
Bool
)
(
h
:
Witness
query
witness
)
:
witness
.
length
≤
query
.
length
+
1
source
theorem
Complexity
.
CircuitSAT
.
pairLang_witness_mem_P_internal
:
pairLang
Witness
∈
P
source
theorem
Complexity
.
CircuitSAT
.
language_mem_NP_internal
:
language
∈
NP
source
theorem
Complexity
.
CircuitSAT
.
extensionWitness_pair_iff_internal
(
code
fixedPrefix
ruler
witness
:
List
Bool
)
:
ExtensionWitness
(
pair
code
(
pair
fixedPrefix
ruler
)
)
witness
↔
witness
.
length
=
ruler
.
length
∧
CircuitCode.evalFamilyCode
code
(
fixedPrefix
++
witness
)
=
some
true
source
theorem
Complexity
.
CircuitSAT
.
pair_mem_extensionLanguage_iff_internal
(
code
fixedPrefix
ruler
:
List
Bool
)
:
pair
code
(
pair
fixedPrefix
ruler
)
∈
extensionLanguage
↔
∃ (
witness
:
List
Bool
),
witness
.
length
=
ruler
.
length
∧
CircuitCode.evalFamilyCode
code
(
fixedPrefix
++
witness
)
=
some
true
source
theorem
Complexity
.
CircuitSAT
.
extensionWitness_length_le_internal
(
query
witness
:
List
Bool
)
(
h
:
ExtensionWitness
query
witness
)
:
witness
.
length
≤
query
.
length
+
1
source
theorem
Complexity
.
CircuitSAT
.
pairLang_extensionWitness_mem_P_internal
:
pairLang
ExtensionWitness
∈
P
source
theorem
Complexity
.
CircuitSAT
.
extensionLanguage_mem_NP_internal
:
extensionLanguage
∈
NP