Canonical encoding of finite Boolean assignments and tables -- proof internals #
theorem
Complexity.BooleanDependency.OrderedAssignment.card_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
:
theorem
Complexity.BooleanDependency.length_encodeOrderedFunction_internal
{index : Type u_1}
[Fintype index]
[LinearOrder index]
(function : index → Bool)
:
theorem
Complexity.BooleanDependency.decodeOrderedFunction?_encodeOrderedFunction_internal
{index : Type u_1}
[Fintype index]
[LinearOrder index]
(function : index → Bool)
:
theorem
Complexity.BooleanDependency.encodeOrderedFunction_injective_internal
{index : Type u_1}
[Fintype index]
[LinearOrder index]
:
theorem
Complexity.BooleanDependency.decodeOrderedFunction?_eq_none_iff_internal
{index : Type u_1}
[Fintype index]
[LinearOrder index]
(bits : List Bool)
:
theorem
Complexity.BooleanDependency.length_encodeAssignment_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
(assignment : ↥coordinates → Bool)
:
theorem
Complexity.BooleanDependency.decodeAssignment?_encodeAssignment_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
(assignment : ↥coordinates → Bool)
:
theorem
Complexity.BooleanDependency.encodeAssignment_injective_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
:
Function.Injective (encodeAssignment coordinates)
theorem
Complexity.BooleanDependency.decodeAssignment?_eq_none_iff_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
(bits : List Bool)
:
theorem
Complexity.BooleanDependency.length_encodeTable_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
(table : (↥coordinates → Bool) → Bool)
:
theorem
Complexity.BooleanDependency.decodeTable?_encodeTable_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
(table : (↥coordinates → Bool) → Bool)
:
theorem
Complexity.BooleanDependency.encodeTable_injective_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
:
Function.Injective (encodeTable coordinates)
theorem
Complexity.BooleanDependency.decodeTable?_eq_none_iff_internal
{coordinate : Type u_1}
[LinearOrder coordinate]
(coordinates : Finset coordinate)
(bits : List Bool)
: