Documentation
Complexitylib
.
Circuits
.
NormalForm
.
Operations
.
Internal
Search
return to top
source
Imports
Init
Complexitylib.Circuits.NormalForm.Operations.Defs
Imported by
Complexity
.
DNF
.
eval_disjoin_internal
Complexity
.
DNF
.
width_disjoin_le_internal
Complexity
.
DNF
.
complexity_disjoin_internal
Complexity
.
CNF
.
eval_conjoin_internal
Complexity
.
CNF
.
width_conjoin_le_internal
Complexity
.
CNF
.
complexity_conjoin_internal
Operations on CNF and DNF -- proof internals
#
source
theorem
Complexity
.
DNF
.
eval_disjoin_internal
{
N
:
ℕ
}
(
formulas
:
List
(
DNF
N
)
)
(
input
:
BitString
N
)
:
(
disjoin
formulas
)
.
eval
input
=
formulas
.
any
fun (
formula
:
DNF
N
) =>
formula
.
eval
input
source
theorem
Complexity
.
DNF
.
width_disjoin_le_internal
{
N
:
ℕ
}
(
formulas
:
List
(
DNF
N
)
)
(
bound
:
ℕ
)
(
hbound
:
∀
formula
∈
formulas
,
formula
.
width
≤
bound
)
:
(
disjoin
formulas
)
.
width
≤
bound
source
theorem
Complexity
.
DNF
.
complexity_disjoin_internal
{
N
:
ℕ
}
(
formulas
:
List
(
DNF
N
)
)
:
(
disjoin
formulas
)
.
complexity
=
(
List.map
complexity
formulas
)
.
sum
source
theorem
Complexity
.
CNF
.
eval_conjoin_internal
{
N
:
ℕ
}
(
formulas
:
List
(
CNF
N
)
)
(
input
:
BitString
N
)
:
(
conjoin
formulas
)
.
eval
input
=
formulas
.
all
fun (
formula
:
CNF
N
) =>
formula
.
eval
input
source
theorem
Complexity
.
CNF
.
width_conjoin_le_internal
{
N
:
ℕ
}
(
formulas
:
List
(
CNF
N
)
)
(
bound
:
ℕ
)
(
hbound
:
∀
formula
∈
formulas
,
formula
.
width
≤
bound
)
:
(
conjoin
formulas
)
.
width
≤
bound
source
theorem
Complexity
.
CNF
.
complexity_conjoin_internal
{
N
:
ℕ
}
(
formulas
:
List
(
CNF
N
)
)
:
(
conjoin
formulas
)
.
complexity
=
(
List.map
complexity
formulas
)
.
sum