compiled-knowledge 4.0.0a24__cp312-cp312-win32.whl → 4.1.0a1__cp312-cp312-win32.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of compiled-knowledge might be problematic. Click here for more details.
- ck/circuit/_circuit_cy.c +1 -1
- ck/circuit/_circuit_cy.cp312-win32.pyd +0 -0
- ck/circuit/tmp_const.py +5 -4
- ck/circuit_compiler/cython_vm_compiler/_compiler.c +152 -152
- ck/circuit_compiler/cython_vm_compiler/_compiler.cp312-win32.pyd +0 -0
- ck/circuit_compiler/interpret_compiler.py +2 -2
- ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_cy.c +1 -1
- ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_cy.cp312-win32.pyd +0 -0
- ck/circuit_compiler/support/llvm_ir_function.py +4 -4
- ck/dataset/__init__.py +1 -0
- ck/dataset/cross_table.py +270 -0
- ck/dataset/cross_table_probabilities.py +53 -0
- ck/dataset/dataset.py +577 -0
- ck/dataset/dataset_compute.py +140 -0
- ck/dataset/dataset_from_crosstable.py +45 -0
- ck/dataset/dataset_from_csv.py +147 -0
- ck/dataset/sampled_dataset.py +96 -0
- ck/example/diamond_square.py +3 -1
- ck/example/triangle_square.py +3 -1
- ck/example/truss.py +3 -1
- ck/in_out/parse_net.py +21 -19
- ck/in_out/parser_utils.py +7 -3
- ck/learning/__init__.py +0 -0
- ck/learning/train_generative.py +149 -0
- ck/pgm.py +95 -84
- ck/pgm_circuit/mpe_program.py +3 -4
- ck/pgm_circuit/pgm_circuit.py +27 -18
- ck/pgm_circuit/program_with_slotmap.py +27 -46
- ck/pgm_circuit/support/compile_circuit.py +2 -4
- ck/pgm_compiler/support/circuit_table/_circuit_table_cy.c +1 -1
- ck/pgm_compiler/support/circuit_table/_circuit_table_cy.cp312-win32.pyd +0 -0
- ck/probability/empirical_probability_space.py +1 -0
- ck/probability/probability_space.py +10 -11
- ck/program/raw_program.py +23 -16
- ck/sampling/sampler_support.py +5 -6
- ck/utils/iter_extras.py +3 -2
- ck/utils/local_config.py +16 -8
- {compiled_knowledge-4.0.0a24.dist-info → compiled_knowledge-4.1.0a1.dist-info}/METADATA +1 -1
- {compiled_knowledge-4.0.0a24.dist-info → compiled_knowledge-4.1.0a1.dist-info}/RECORD +42 -32
- {compiled_knowledge-4.0.0a24.dist-info → compiled_knowledge-4.1.0a1.dist-info}/WHEEL +0 -0
- {compiled_knowledge-4.0.0a24.dist-info → compiled_knowledge-4.1.0a1.dist-info}/licenses/LICENSE.txt +0 -0
- {compiled_knowledge-4.0.0a24.dist-info → compiled_knowledge-4.1.0a1.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
from typing import Tuple, Sequence, Dict
|
|
1
|
+
from typing import Tuple, Sequence, Dict
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
import numpy as np
|
|
4
|
+
|
|
5
|
+
from ck.pgm import RandomVariable, Indicator, ParamId
|
|
4
6
|
from ck.pgm_circuit.slot_map import SlotMap, SlotKey
|
|
5
7
|
from ck.probability.probability_space import Condition, check_condition
|
|
6
8
|
from ck.program.program_buffer import ProgramBuffer
|
|
@@ -69,40 +71,6 @@ class ProgramWithSlotmap:
|
|
|
69
71
|
def slot_map(self) -> SlotMap:
|
|
70
72
|
return self._slot_map
|
|
71
73
|
|
|
72
|
-
def instances(self, flip: bool = False) -> Iterable[Instance]:
|
|
73
|
-
"""
|
|
74
|
-
Enumerate instances of the random variables.
|
|
75
|
-
|
|
76
|
-
Each instance is a tuples of state indexes, co-indexed with the given random variables.
|
|
77
|
-
|
|
78
|
-
The order is the natural index order (i.e., last random variable changing most quickly).
|
|
79
|
-
|
|
80
|
-
Args:
|
|
81
|
-
flip: if true, then first random variable changes most quickly.
|
|
82
|
-
|
|
83
|
-
Returns:
|
|
84
|
-
an iteration over tuples, each tuple holds state indexes
|
|
85
|
-
co-indexed with the given random variables.
|
|
86
|
-
"""
|
|
87
|
-
return rv_instances(*self._rvs, flip=flip)
|
|
88
|
-
|
|
89
|
-
def instances_as_indicators(self, flip: bool = False) -> Iterable[Sequence[Indicator]]:
|
|
90
|
-
"""
|
|
91
|
-
Enumerate instances of the random variables.
|
|
92
|
-
|
|
93
|
-
Each instance is a tuples of indicators, co-indexed with the given random variables.
|
|
94
|
-
|
|
95
|
-
The order is the natural index order (i.e., last random variable changing most quickly).
|
|
96
|
-
|
|
97
|
-
Args:
|
|
98
|
-
flip: if true, then first random variable changes most quickly.
|
|
99
|
-
|
|
100
|
-
Returns:
|
|
101
|
-
an iteration over tuples, each tuples holds random variable indicators
|
|
102
|
-
co-indexed with the given random variables.
|
|
103
|
-
"""
|
|
104
|
-
return rv_instances_as_indicators(*self._rvs, flip=flip)
|
|
105
|
-
|
|
106
74
|
def compute(self) -> NDArrayNumeric:
|
|
107
75
|
"""
|
|
108
76
|
Execute the program to compute and return the result. As per `ProgramBuffer.compute`.
|
|
@@ -114,7 +82,10 @@ class ProgramWithSlotmap:
|
|
|
114
82
|
|
|
115
83
|
def compute_conditioned(self, *condition: Condition) -> NDArrayNumeric:
|
|
116
84
|
"""
|
|
117
|
-
|
|
85
|
+
Compute the program value, after setting the given condition.
|
|
86
|
+
|
|
87
|
+
Equivalent to::
|
|
88
|
+
|
|
118
89
|
self.set_condition(*condition)
|
|
119
90
|
return self.compute()
|
|
120
91
|
"""
|
|
@@ -143,29 +114,36 @@ class ProgramWithSlotmap:
|
|
|
143
114
|
"""
|
|
144
115
|
return self._program_buffer.vars
|
|
145
116
|
|
|
146
|
-
def __setitem__(self, item: int | slice | SlotKey |
|
|
117
|
+
def __setitem__(self, item: int | slice | SlotKey | RandomVariable, value: float) -> None:
|
|
147
118
|
"""
|
|
148
|
-
Set
|
|
119
|
+
Set input slot value/s.
|
|
149
120
|
"""
|
|
150
121
|
if isinstance(item, (int, slice)):
|
|
151
122
|
self._program_buffer[item] = value
|
|
152
123
|
elif isinstance(item, (Indicator, ParamId)):
|
|
153
124
|
self._program_buffer[self._slot_map[item]] = value
|
|
125
|
+
elif isinstance(item, RandomVariable):
|
|
126
|
+
for ind in item:
|
|
127
|
+
self._program_buffer[self._slot_map[ind]] = value
|
|
154
128
|
else:
|
|
155
|
-
|
|
156
|
-
for i in item:
|
|
157
|
-
self[i] = value
|
|
129
|
+
raise IndexError(f'unknown index type: {type(item)}')
|
|
158
130
|
|
|
159
|
-
def __getitem__(self, item: int | slice | SlotKey) -> NDArrayNumeric:
|
|
131
|
+
def __getitem__(self, item: int | slice | SlotKey | RandomVariable) -> NDArrayNumeric:
|
|
160
132
|
"""
|
|
161
|
-
Get
|
|
133
|
+
Get input slot value/s.
|
|
162
134
|
"""
|
|
163
135
|
if isinstance(item, (int, slice)):
|
|
164
136
|
return self._program_buffer[item]
|
|
165
137
|
elif isinstance(item, (Indicator, ParamId)):
|
|
166
138
|
return self._program_buffer[self._slot_map[item]]
|
|
139
|
+
elif isinstance(item, RandomVariable):
|
|
140
|
+
return np.fromiter(
|
|
141
|
+
(self._program_buffer[self._slot_map[ind]] for ind in item),
|
|
142
|
+
dtype=self._program_buffer.dtype,
|
|
143
|
+
count=len(item)
|
|
144
|
+
)
|
|
167
145
|
else:
|
|
168
|
-
raise IndexError('unknown index type')
|
|
146
|
+
raise IndexError(f'unknown index type: {type(item)}')
|
|
169
147
|
|
|
170
148
|
def set_condition(self, *condition: Condition) -> None:
|
|
171
149
|
"""
|
|
@@ -208,7 +186,10 @@ class ProgramWithSlotmap:
|
|
|
208
186
|
|
|
209
187
|
Args:
|
|
210
188
|
rv: a random variable whose indicators are in the slot map.
|
|
211
|
-
values: list of values
|
|
189
|
+
values: list of values
|
|
190
|
+
|
|
191
|
+
Assumes:
|
|
192
|
+
len(values) == len(rv).
|
|
212
193
|
"""
|
|
213
194
|
for i in range(len(rv)):
|
|
214
195
|
self[rv[i]] = values[i]
|
|
@@ -30,11 +30,9 @@ def compile_results(
|
|
|
30
30
|
a compiled RawProgram.
|
|
31
31
|
"""
|
|
32
32
|
circuit: Circuit = pgm_circuit.circuit_top.circuit
|
|
33
|
-
if const_parameters:
|
|
34
|
-
parameter_values = pgm_circuit.parameter_values
|
|
35
|
-
number_of_indicators = pgm_circuit.number_of_indicators
|
|
33
|
+
if const_parameters and len(pgm_circuit.parameter_values) > 0:
|
|
36
34
|
with TmpConst(circuit) as tmp:
|
|
37
|
-
for slot, value in enumerate(parameter_values, start=number_of_indicators):
|
|
35
|
+
for slot, value in enumerate(pgm_circuit.parameter_values, start=pgm_circuit.number_of_indicators):
|
|
38
36
|
tmp.set_const(slot, value)
|
|
39
37
|
raw_program: RawProgram = compiler(*results, circuit=circuit)
|
|
40
38
|
else:
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"/O2"
|
|
14
14
|
],
|
|
15
15
|
"include_dirs": [
|
|
16
|
-
"C:\\Users\\runneradmin\\AppData\\Local\\Temp\\build-env-
|
|
16
|
+
"C:\\Users\\runneradmin\\AppData\\Local\\Temp\\build-env-qw5_jlkb\\Lib\\site-packages\\numpy\\_core\\include"
|
|
17
17
|
],
|
|
18
18
|
"name": "ck.pgm_compiler.support.circuit_table._circuit_table_cy",
|
|
19
19
|
"sources": [
|
|
Binary file
|
|
@@ -11,6 +11,7 @@ class EmpiricalProbabilitySpace(ProbabilitySpace):
|
|
|
11
11
|
Note that this is not necessarily an efficient approach to calculating probabilities and statistics.
|
|
12
12
|
|
|
13
13
|
This probability space treats each of the samples as equally weighted.
|
|
14
|
+
For a probability space over unequally weighted samples, consider using `CrossTableProbabilitySpace`.
|
|
14
15
|
|
|
15
16
|
Assumes:
|
|
16
17
|
len(sample) == len(rvs), for each sample in samples.
|
|
@@ -11,17 +11,16 @@ from ck.utils.map_set import MapSet
|
|
|
11
11
|
from ck.utils.np_extras import dtype_for_number_of_states, NDArrayFloat64, DTypeStates, NDArrayNumeric
|
|
12
12
|
|
|
13
13
|
Condition: TypeAlias = None | Indicator | Iterable[Indicator]
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
"""
|
|
14
|
+
"""
|
|
15
|
+
Type defining a condition. A condition is logically a set of
|
|
16
|
+
indicators, each indicator representing a random variable being in some state.
|
|
17
|
+
|
|
18
|
+
If multiple indicators of the same random variable appear in
|
|
19
|
+
a condition, then they are interpreted as
|
|
20
|
+
a disjunction, otherwise indicators are interpreted as
|
|
21
|
+
a conjunction. E.g., the condition (X=0, Y=1, Y=3) means
|
|
22
|
+
X=0 and (Y=1 or Y=3).
|
|
23
|
+
"""
|
|
25
24
|
|
|
26
25
|
_NAN: float = np.nan # Not-a-number (i.e., the result of an invalid calculation).
|
|
27
26
|
|
ck/program/raw_program.py
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from dataclasses import dataclass
|
|
2
|
-
from typing import Callable, Sequence
|
|
2
|
+
from typing import Callable, Sequence, TypeAlias
|
|
3
3
|
|
|
4
4
|
import numpy as np
|
|
5
5
|
import ctypes as ct
|
|
@@ -7,12 +7,14 @@ import ctypes as ct
|
|
|
7
7
|
|
|
8
8
|
from ck.utils.np_extras import NDArrayNumeric, DTypeNumeric
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
RawProgramFunction: TypeAlias = Callable[[ct.POINTER, ct.POINTER, ct.POINTER], None]
|
|
11
|
+
"""
|
|
12
|
+
RawProgramFunction is a function of three ctypes arrays, returning nothing.
|
|
13
|
+
Args:
|
|
14
|
+
[0]: input values,
|
|
15
|
+
[1]: temporary working memory,
|
|
16
|
+
[2]: output values.
|
|
17
|
+
"""
|
|
16
18
|
|
|
17
19
|
|
|
18
20
|
@dataclass
|
|
@@ -26,23 +28,28 @@ class RawProgram:
|
|
|
26
28
|
an efficient method for executing a program as buffers are reallocated for
|
|
27
29
|
each call. Alternatively, a `RawProgram` can be wrapped in a `ProgramBuffer`
|
|
28
30
|
for computationally efficient memory buffer reuse.
|
|
29
|
-
|
|
30
|
-
Fields:
|
|
31
|
-
function: is a function of three ctypes arrays, returning nothing.
|
|
32
|
-
dtype: the numpy data type of the array values.
|
|
33
|
-
number_of_vars: the number of input values (first function argument).
|
|
34
|
-
number_of_tmps: the number of working memory values (second function argument).
|
|
35
|
-
number_of_results: the number of result values (third function argument).
|
|
36
|
-
var_indices: maps the index of inputs (from 0 to self.number_of_vars - 1) to the index
|
|
37
|
-
of the corresponding circuit var.
|
|
38
31
|
"""
|
|
39
32
|
|
|
40
33
|
function: RawProgramFunction
|
|
34
|
+
"""a function of three ctypes arrays, returning nothing."""
|
|
35
|
+
|
|
41
36
|
dtype: DTypeNumeric
|
|
37
|
+
"""the numpy data type of the array values."""
|
|
38
|
+
|
|
42
39
|
number_of_vars: int
|
|
40
|
+
"""the number of input values (first function argument)."""
|
|
41
|
+
|
|
43
42
|
number_of_tmps: int
|
|
43
|
+
"""the number of working memory values (second function argument)."""
|
|
44
|
+
|
|
44
45
|
number_of_results: int
|
|
46
|
+
"""the number of result values (third function argument)."""
|
|
47
|
+
|
|
45
48
|
var_indices: Sequence[int]
|
|
49
|
+
"""
|
|
50
|
+
a map from the index of inputs (from 0 to self.number_of_vars - 1) to the index
|
|
51
|
+
of the corresponding circuit var.
|
|
52
|
+
"""
|
|
46
53
|
|
|
47
54
|
def __call__(self, var_values: NDArrayNumeric | Sequence[int | float] | int | float) -> NDArrayNumeric:
|
|
48
55
|
"""
|
ck/sampling/sampler_support.py
CHANGED
|
@@ -11,12 +11,11 @@ from ck.utils.np_extras import NDArrayStates, NDArrayNumeric
|
|
|
11
11
|
from ck.utils.random_extras import Random
|
|
12
12
|
|
|
13
13
|
YieldF: TypeAlias = Callable[[NDArrayStates], int] | Callable[[NDArrayStates], Instance]
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
"""
|
|
14
|
+
"""
|
|
15
|
+
Type of a yield function. Support for a sampler.
|
|
16
|
+
A yield function may be used to implement a sampler's iterator, thus
|
|
17
|
+
it provides an Instance or single state index.
|
|
18
|
+
"""
|
|
20
19
|
|
|
21
20
|
|
|
22
21
|
@dataclass
|
ck/utils/iter_extras.py
CHANGED
|
@@ -33,11 +33,12 @@ def combos(list_of_lists: Sequence[Sequence[_T]], flip=False) -> Iterable[Tuple[
|
|
|
33
33
|
Iterate over all combinations of taking one element from each of the lists.
|
|
34
34
|
|
|
35
35
|
The order of results has the first element changing most rapidly.
|
|
36
|
-
For example, given [[1,2,3],[4,5],[6,7]], combos yields the following
|
|
36
|
+
For example, given [[1,2,3],[4,5],[6,7]], combos yields the following::
|
|
37
|
+
|
|
37
38
|
(1,4,6), (2,4,6), (3,4,6), (1,5,6), (2,5,6), (3,5,6),
|
|
38
39
|
(1,4,7), (2,4,7), (3,4,7), (1,5,7), (2,5,7), (3,5,7).
|
|
39
40
|
|
|
40
|
-
If flip, then the last changes most rapidly.
|
|
41
|
+
If `flip` is true, then the last changes most rapidly.
|
|
41
42
|
"""
|
|
42
43
|
num = len(list_of_lists)
|
|
43
44
|
if num == 0:
|
ck/utils/local_config.py
CHANGED
|
@@ -12,10 +12,13 @@ other getter methods wrap `get`.
|
|
|
12
12
|
|
|
13
13
|
The `get` method will search for a value for a requested variable
|
|
14
14
|
using the following steps.
|
|
15
|
+
|
|
15
16
|
1) Check the `programmatic config` which is a dictionary that
|
|
16
|
-
|
|
17
|
+
can be directly updated.
|
|
18
|
+
|
|
17
19
|
2) Check the PYTHONPATH for a module called `config` (i.e., a
|
|
18
|
-
|
|
20
|
+
`config.py` file) for global variables defined in that module.
|
|
21
|
+
|
|
19
22
|
3) Check the system environment variables (`os.environ`).
|
|
20
23
|
|
|
21
24
|
Variable names must be a valid Python identifier. Only valid
|
|
@@ -171,8 +174,9 @@ def get_params(
|
|
|
171
174
|
are returned as a single string with `delim` as the delimiter. If
|
|
172
175
|
`delim` is not None then the default value for `sep` is '='.
|
|
173
176
|
|
|
174
|
-
For example, assume config.py contains: ABC = 123 and DEF = 456
|
|
175
|
-
then
|
|
177
|
+
For example, assume `config.py` contains: `ABC = 123` and `DEF = 456`,
|
|
178
|
+
then::
|
|
179
|
+
|
|
176
180
|
get_params('ABC') -> ('ABC', 123)
|
|
177
181
|
get_params('ABC', 'DEF') -> ('ABC', 123), ('DEF', 456)
|
|
178
182
|
get_params('ABC', sep='=') = 'ABC=123'
|
|
@@ -180,10 +184,14 @@ def get_params(
|
|
|
180
184
|
get_params('ABC;DEF', delim=';') = 'ABC=123;DEF=456'
|
|
181
185
|
get_params('ABC;DEF', sep='==', delim=';') = 'ABC==123;DEF==456'
|
|
182
186
|
|
|
183
|
-
:
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
+
Args:
|
|
188
|
+
keys: the names of variables to access.
|
|
189
|
+
sep: the separator character between {variable} and {value}.
|
|
190
|
+
delim: the delimiter character between key-value pairs.
|
|
191
|
+
config: a Config instance to update. Default is the global config.
|
|
192
|
+
|
|
193
|
+
Returns:
|
|
194
|
+
the requested parameter values.
|
|
187
195
|
"""
|
|
188
196
|
if delim is not None:
|
|
189
197
|
keys = flatten(key.split(delim) for key in keys)
|
|
@@ -1,31 +1,39 @@
|
|
|
1
1
|
ck/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
ck/pgm.py,sha256=
|
|
2
|
+
ck/pgm.py,sha256=DXI3RZWBlk6wNj9VlAEDGeEUQ1WIpQwojVAt231K-Co,121095
|
|
3
3
|
ck/circuit/__init__.py,sha256=klUR7OVESf53-8Ho4f32clHFsR2SOz4XgwZzfDlms88,418
|
|
4
|
-
ck/circuit/_circuit_cy.c,sha256=
|
|
5
|
-
ck/circuit/_circuit_cy.cp312-win32.pyd,sha256=
|
|
4
|
+
ck/circuit/_circuit_cy.c,sha256=F2S4BB48_dFPkcemz98GgDy6MPuiUBZ55ag--ZHIQjA,1741715
|
|
5
|
+
ck/circuit/_circuit_cy.cp312-win32.pyd,sha256=nB2j5CDFSVW1wGwMOsreJ1GpEhT9GgckPqOWZr4Ot9c,221184
|
|
6
6
|
ck/circuit/_circuit_cy.pxd,sha256=F1WU4KuX_knXQX-hwNKoHsoUK3fJLbLOxEnomWMJFpI,1057
|
|
7
7
|
ck/circuit/_circuit_cy.pyx,sha256=TIjqsdyN_IzOm9XQw26kEURpL6GSL1kJO3K-UUlkbQc,27763
|
|
8
8
|
ck/circuit/_circuit_py.py,sha256=gQZoEphxut2UyBL0ZqmNc8KlNBSMST_VOCqOpDMIRSM,28331
|
|
9
|
-
ck/circuit/tmp_const.py,sha256=
|
|
9
|
+
ck/circuit/tmp_const.py,sha256=9DVKsAqwNb3BrmaLoxrBoVmFqQ3nacz3wIx7k3qe8SE,2375
|
|
10
10
|
ck/circuit_compiler/__init__.py,sha256=T0Igyp5jPgnIXv4oRcIYhmsOdcNOb3L4Za6dK6eYk7g,132
|
|
11
11
|
ck/circuit_compiler/circuit_compiler.py,sha256=xujLh120_G7AGJpv-IZTI4S1TpNf4gzHilaqvlKvfXA,1148
|
|
12
|
-
ck/circuit_compiler/interpret_compiler.py,sha256=
|
|
12
|
+
ck/circuit_compiler/interpret_compiler.py,sha256=xNpUdzbKgATLgF0beGKIfLonrtcVPitsvqlkqZPsbY4,8790
|
|
13
13
|
ck/circuit_compiler/llvm_compiler.py,sha256=6RHUCVWCOgt3ZNyjRTl2Z2npYJMWyAFJVAIc5SAx2mY,14023
|
|
14
14
|
ck/circuit_compiler/llvm_vm_compiler.py,sha256=XJhiAZmGMRRz49XUfng9lgETxVw6NgD6XCI0H3fX-1E,22200
|
|
15
15
|
ck/circuit_compiler/named_circuit_compilers.py,sha256=snlD3JnhAZC-atKpf5GD0v4CGdvj2_ZhCZ3O-tsxzxc,2284
|
|
16
16
|
ck/circuit_compiler/cython_vm_compiler/__init__.py,sha256=pEAwTleuZgdYhTAQMea2f9YsFK54eoNbZSbrWkW8aeE,49
|
|
17
|
-
ck/circuit_compiler/cython_vm_compiler/_compiler.c,sha256=
|
|
18
|
-
ck/circuit_compiler/cython_vm_compiler/_compiler.cp312-win32.pyd,sha256
|
|
17
|
+
ck/circuit_compiler/cython_vm_compiler/_compiler.c,sha256=YoG5huyyajyWDt45kjeb_S5UMCKWY-bAr8DSQx3DGd4,871325
|
|
18
|
+
ck/circuit_compiler/cython_vm_compiler/_compiler.cp312-win32.pyd,sha256=8Ih75BGS-LJxjOpSEnWX_ZxMaBuN61dnB3_cqzdV148,91648
|
|
19
19
|
ck/circuit_compiler/cython_vm_compiler/_compiler.pyx,sha256=550r0AkOh8ZuuTRy3e6Aq-YqBQ82EKcap8e6f3zlEuM,13278
|
|
20
20
|
ck/circuit_compiler/cython_vm_compiler/cython_vm_compiler.py,sha256=3Q-HCyA7VWFoXS9gn-k4LXedzqHPvdFNvWHfDcKYv6s,4473
|
|
21
21
|
ck/circuit_compiler/support/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
22
|
ck/circuit_compiler/support/input_vars.py,sha256=x6krN6sW9A-vZTteY4M4on_0vS4ChaaCcmnXcnQ4y0s,4812
|
|
23
|
-
ck/circuit_compiler/support/llvm_ir_function.py,sha256=
|
|
23
|
+
ck/circuit_compiler/support/llvm_ir_function.py,sha256=07IUmx4bGReDu-BsUhJEWM_onm8NmsHwQzJan1rnAFE,8572
|
|
24
24
|
ck/circuit_compiler/support/circuit_analyser/__init__.py,sha256=RbyIObAAb-w0Ky4fB198xAfxTh2doquN9ez68SZSZgo,536
|
|
25
|
-
ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_cy.c,sha256=
|
|
26
|
-
ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_cy.cp312-win32.pyd,sha256=
|
|
25
|
+
ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_cy.c,sha256=NaGjKozPtkX4MlLkl9iZa2SaEXIXiQLuYcXurNV6EFQ,448751
|
|
26
|
+
ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_cy.cp312-win32.pyd,sha256=o-GK_uSV-tQgc8KTRIkUMS3sa7ktkDeaMc-ioxRIKy8,47104
|
|
27
27
|
ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_cy.pyx,sha256=ctDOHOjnUhdsR_XHBrgchFVTImLhsEUjU3cqkP-GdF8,3331
|
|
28
28
|
ck/circuit_compiler/support/circuit_analyser/_circuit_analyser_py.py,sha256=eWjc2B946LeSzcGa9PyI4XQvlx_B1KPEiQuM6OOFjjQ,3086
|
|
29
|
+
ck/dataset/__init__.py,sha256=3vxB-b8LdgtoZ73q28sdPYPUbCbXARH-fNGUZcxIzIo,56
|
|
30
|
+
ck/dataset/cross_table.py,sha256=tLXbfONstheQdhMK0VfFa9fBxFOC-5jwW0v7mgNFUF0,9744
|
|
31
|
+
ck/dataset/cross_table_probabilities.py,sha256=U7LlmWUc_Ow6CVEk_6CLK0p2g8GlRpHEGPZFXrV8tmI,1997
|
|
32
|
+
ck/dataset/dataset.py,sha256=EC9ynRP4pCFWmeB8B6zEmPh_3c2jP3K37AnincBZc34,21698
|
|
33
|
+
ck/dataset/dataset_compute.py,sha256=B1BxTJ-JAsNk8l79iDRmJAQ5QwEvWgsI1wepRg4aQCQ,5845
|
|
34
|
+
ck/dataset/dataset_from_crosstable.py,sha256=0I4jr4PtfBtniTFBHlAOlcl_ZH0NSD37azkcA2CaWSQ,1323
|
|
35
|
+
ck/dataset/dataset_from_csv.py,sha256=a3r8OydeiGLN41pVm-9x5z1hvLtyUTCJdzsz2DK9MBM,5698
|
|
36
|
+
ck/dataset/sampled_dataset.py,sha256=8PfiTXqraSQ5rXpFUFFMN13jQL1x--_z9g6FYs2VW1U,3357
|
|
29
37
|
ck/example/__init__.py,sha256=BXVxvTcl3tqgai-xJiGQIaG_ChlpPRdfWg985MQ7dwM,1744
|
|
30
38
|
ck/example/alarm.py,sha256=QkHoUb6MxZzCOCX4nLE8UJazNEqAPqrFWQ01lslvdsk,25274
|
|
31
39
|
ck/example/asia.py,sha256=IX8L-9YCk_DxE-PjYTv1VL33V2oxkHrL7rHmDkMj3kY,1295
|
|
@@ -36,7 +44,7 @@ ck/example/chain.py,sha256=AAqLeEUzZYir3fqBl9bzY1SZKW3HLT_FJPzXTFSOvuU,1351
|
|
|
36
44
|
ck/example/child.py,sha256=IkYgd3LBSQI8S3-hwEWcusHuH5MjqGSKNCl0NJnw7O4,7811
|
|
37
45
|
ck/example/clique.py,sha256=auWWzCV3s-r6ctdPKGcb_bulMymU2pEUuKJsqE1Onm4,1088
|
|
38
46
|
ck/example/cnf_pgm.py,sha256=vzr36kokWutGgbfmsI0ZDIgdmWIsUegnO49EUYjgpVQ,1283
|
|
39
|
-
ck/example/diamond_square.py,sha256=
|
|
47
|
+
ck/example/diamond_square.py,sha256=IkHuzn_04SKXk2a9YRrxmyr5hxyL7CY3-R-GLbWq-P8,2795
|
|
40
48
|
ck/example/earthquake.py,sha256=KuvHciKlidAJAxgti07BS8XoVIXHJth3khvQkP8tGls,1289
|
|
41
49
|
ck/example/empty.py,sha256=tyg8Z8JIwTMR2C8oXD81pzAzvKpHRBX21ocWLdAUfE8,182
|
|
42
50
|
ck/example/hailfinder.py,sha256=KMT9VobwFGWnw0JRymQTkd35HAIRFQhXnoN87mlhCYQ,39405
|
|
@@ -55,28 +63,30 @@ ck/example/star.py,sha256=3vf6xRl4MxRlhj3MGPfwKk3ipSVym-qLYJUDkiUqfe0,1578
|
|
|
55
63
|
ck/example/stress.py,sha256=ENeOKFVFMa8WkbhhCLt2CIeYdPmHaiU_FOGIy80RYpI,1998
|
|
56
64
|
ck/example/student.py,sha256=XqUIX0DxR0a3G1sqK4MM3V_pvUm3IQ5aY2hpbo_BMlo,1333
|
|
57
65
|
ck/example/survey.py,sha256=KrqDgzU1V-yJHy4BEAAJQatqH9YAy8acrp6rVYAqQag,1611
|
|
58
|
-
ck/example/triangle_square.py,sha256=
|
|
59
|
-
ck/example/truss.py,sha256=
|
|
66
|
+
ck/example/triangle_square.py,sha256=WQpFrIm8h51ZYNZ9kAtoq3XamUNiVGKCGAsMdSv5urI,2153
|
|
67
|
+
ck/example/truss.py,sha256=w1DNacSg2HyEz_m38t__hdl3zqzKX5pf-tc8M9PLRGo,1979
|
|
60
68
|
ck/in_out/__init__.py,sha256=PKhy5qeUrmmUaECSQIkoLQ2McAfQFSwB06vQZk3vpmo,112
|
|
61
69
|
ck/in_out/parse_ace_lmap.py,sha256=EZnSLhsZwdPnk2Fbe2El0YXYqvjd_cBh7PZro7ZeR04,7891
|
|
62
70
|
ck/in_out/parse_ace_nnf.py,sha256=zO3smkKKiUy_g0S7WeNyhEaZu5x65wuSNIDWlA3YU_g,13350
|
|
63
|
-
ck/in_out/parse_net.py,sha256=
|
|
64
|
-
ck/in_out/parser_utils.py,sha256=
|
|
71
|
+
ck/in_out/parse_net.py,sha256=ZeHgMXBYUkboMFkbs0y7Px4Ngbooi000obl_wFfym7k,14307
|
|
72
|
+
ck/in_out/parser_utils.py,sha256=5OnvBKGGQbbc9ez8GwwudX2BFYTCF4gbkj6t2f73Esk,5567
|
|
65
73
|
ck/in_out/pgm_pickle.py,sha256=i5LYxez356we7MzHwsQBmFdOvBJOLVKBp4u4lSwBOjU,1004
|
|
66
74
|
ck/in_out/pgm_python.py,sha256=c2-yxXxJ4fF00gUD5Lvt_CSE07EgwYeHW3nSNXunEvc,10092
|
|
67
75
|
ck/in_out/render_bugs.py,sha256=6YBhMIq3VRKFS0XqHbaWj6iz1io7O9icW23kukF_Cic,3383
|
|
68
76
|
ck/in_out/render_net.py,sha256=LpQYAo_tF45vMIcHW1Ir5Zd_Ot69SPAK-e1Tl_6Ygo0,5147
|
|
69
77
|
ck/in_out/render_pomegranate.py,sha256=gGvXyX9vOoilGIIL3rsMB07gERMU-12XPsttfSb4xLI,5764
|
|
78
|
+
ck/learning/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
79
|
+
ck/learning/train_generative.py,sha256=ho1RJPQQ_iq652rRnGoqVnZv4bZHVZshMAxcEsoW3h0,5700
|
|
70
80
|
ck/pgm_circuit/__init__.py,sha256=B0CCjNMnPzrd0YiOEFdK4JzmRCvFIGJi3RJQ5Vg6fqA,37
|
|
71
81
|
ck/pgm_circuit/marginals_program.py,sha256=DUvSND3ozQuBCZcmIsgwZ4w_IWCVV7O31Pm4PJ7ZDok,14786
|
|
72
|
-
ck/pgm_circuit/mpe_program.py,sha256
|
|
73
|
-
ck/pgm_circuit/pgm_circuit.py,sha256=
|
|
74
|
-
ck/pgm_circuit/program_with_slotmap.py,sha256=
|
|
82
|
+
ck/pgm_circuit/mpe_program.py,sha256=-8fcb-txUiKo2bPKhApl_GD7U_gREC5SvU_D5sQe9sg,10226
|
|
83
|
+
ck/pgm_circuit/pgm_circuit.py,sha256=DLjQmaVuAQ0YF6kCi15vDRiydLCJmufeo0hQJndqv2Y,3375
|
|
84
|
+
ck/pgm_circuit/program_with_slotmap.py,sha256=5iIPVvhGncluMR-dfCIqXGjmzSnxLL-btfy80PI23DE,8025
|
|
75
85
|
ck/pgm_circuit/slot_map.py,sha256=T4nBweoiivEdBDhYZ6GWpOXqSusRbp3vrSbCTyP1qpI,857
|
|
76
86
|
ck/pgm_circuit/target_marginals_program.py,sha256=x4YQM-hUQRo2OLxodKJVOAKxqNlxmiDl9nGbbknypkY,3768
|
|
77
87
|
ck/pgm_circuit/wmc_program.py,sha256=WtABU74FOCCJuKRCoDL4CyZ4CJXFmt9RSxiNNHsOhRY,12699
|
|
78
88
|
ck/pgm_circuit/support/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
79
|
-
ck/pgm_circuit/support/compile_circuit.py,sha256=
|
|
89
|
+
ck/pgm_circuit/support/compile_circuit.py,sha256=5UtwaGQHWp8I5aVECXGQjkzKqXBRdO8dRunQNGSNdXo,3203
|
|
80
90
|
ck/pgm_compiler/__init__.py,sha256=XCK1AWBBB9UYi6kbFnxMFzBL9a25EWfHnz_yn3ZKYuM,112
|
|
81
91
|
ck/pgm_compiler/factor_elimination.py,sha256=6iMh_NdOQh4D5cuo8q1y7yUuj3glnM9I0OJ9vlJAGqU,13807
|
|
82
92
|
ck/pgm_compiler/named_pgm_compilers.py,sha256=sI-dwF7mht6aEuVfsN3sIO_4oH7RrjIt5x9ZlBwVQys,3376
|
|
@@ -91,31 +101,31 @@ ck/pgm_compiler/support/factor_tables.py,sha256=tV9qE2zC8iwEQxTuXE6qiE6lmMpz4-Vc
|
|
|
91
101
|
ck/pgm_compiler/support/join_tree.py,sha256=Chkyyo--ChgWEsDqTh8RCxPN7Z1NyvL--GjTC4ONvkY,12897
|
|
92
102
|
ck/pgm_compiler/support/named_compiler_maker.py,sha256=g2MLnlkWXkISHL6dh23EY53SptTo7-itfuZogSpMdB8,1420
|
|
93
103
|
ck/pgm_compiler/support/circuit_table/__init__.py,sha256=yJ05NvuNE9j0E_QnjDzHYfLqcHn5TdOleEpG3wSRgXQ,579
|
|
94
|
-
ck/pgm_compiler/support/circuit_table/_circuit_table_cy.c,sha256=
|
|
95
|
-
ck/pgm_compiler/support/circuit_table/_circuit_table_cy.cp312-win32.pyd,sha256=
|
|
104
|
+
ck/pgm_compiler/support/circuit_table/_circuit_table_cy.c,sha256=9nI3PYdEGS09uaPBjwxt0ftjimajyEqEWbyluGozm4s,730350
|
|
105
|
+
ck/pgm_compiler/support/circuit_table/_circuit_table_cy.cp312-win32.pyd,sha256=yskq1Ty3_tzfdshkL0hbHJDhl9acOZAFTbk2Uy0gEJk,87040
|
|
96
106
|
ck/pgm_compiler/support/circuit_table/_circuit_table_cy.pyx,sha256=rVO1yxjZmZ6yv5s0zKq4Ji9WYrDuYTZsRG_zeF1_1xE,12015
|
|
97
107
|
ck/pgm_compiler/support/circuit_table/_circuit_table_py.py,sha256=h6xPYGBSy6XHQBFLPD2D1-V7Kiw9utY68nWrcGRMEg4,11287
|
|
98
108
|
ck/probability/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
99
|
-
ck/probability/empirical_probability_space.py,sha256=
|
|
109
|
+
ck/probability/empirical_probability_space.py,sha256=sO31UIhePRFtkUDN84HT9qhtWsYa0vYaRdXMsttNgTk,2140
|
|
100
110
|
ck/probability/pgm_probability_space.py,sha256=Slmp0mwDMoVh_86Y8L1QjAQsneazcK2VGQcRW8O2C3M,1267
|
|
101
|
-
ck/probability/probability_space.py,sha256=
|
|
111
|
+
ck/probability/probability_space.py,sha256=RXNm2gIVcabjbr6WsNebZMKqL8LY32RRaRMGHE2cU6o,26109
|
|
102
112
|
ck/program/__init__.py,sha256=Ss9-0eqsGxCGloD6liH-0iqBG5Q3vPRF4XCw2hkDJ0M,110
|
|
103
113
|
ck/program/program.py,sha256=gDJ5Q2kXZuaoHboa9yNTg0tQH9S-Gmw0BRx6PPV28pU,4184
|
|
104
114
|
ck/program/program_buffer.py,sha256=1fiUcT7sqyr4vu8jXzK3ZsrgURFhWMdm6hr2BeS9ONA,5665
|
|
105
|
-
ck/program/raw_program.py,sha256=
|
|
115
|
+
ck/program/raw_program.py,sha256=3_XXudmdg_z9bwoul7pdrvaWgxRONjveXgPR1CK4hos,4212
|
|
106
116
|
ck/sampling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
107
117
|
ck/sampling/forward_sampler.py,sha256=pTtpaH_ONH67G4P-aJ1p8YZSaXr4TTD6pj3ZEI2y7KM,8348
|
|
108
118
|
ck/sampling/marginals_direct_sampler.py,sha256=p1jDr1stG2Hjay3D8hILezW-5YZTX1p3odUcJDAI-OQ,4466
|
|
109
119
|
ck/sampling/sampler.py,sha256=qhfguy8rnVQBVVXhJylvh-8Kq7rfHW62a3DEtv9v7Xc,2306
|
|
110
|
-
ck/sampling/sampler_support.py,sha256=
|
|
120
|
+
ck/sampling/sampler_support.py,sha256=q2osk-o6iWfsMXUhzfv1spPtyB9WQlQAlnuclLyOSQQ,9768
|
|
111
121
|
ck/sampling/uniform_sampler.py,sha256=NCN1T77v4g4hsdNgIsZDxHBndfj4AghLSk8WKQt_2a0,2586
|
|
112
122
|
ck/sampling/wmc_direct_sampler.py,sha256=7qiz-bRlQ59ZBJmg0bEG0y63pXTVXNVx4d410BGhnJg,7265
|
|
113
123
|
ck/sampling/wmc_gibbs_sampler.py,sha256=GMKVW2AVtsWtP6vxE3Y2dy-dKr7GoO_vLEA9eC304fo,6567
|
|
114
124
|
ck/sampling/wmc_metropolis_sampler.py,sha256=PRv7wtPZz7BcwN8iArsykVwqgY77v5km7rXcawFAUPQ,6470
|
|
115
125
|
ck/sampling/wmc_rejection_sampler.py,sha256=cd0VONZf-oa491RRKfwT2LakQs0o_slgPCes8AOvSNc,4897
|
|
116
126
|
ck/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
117
|
-
ck/utils/iter_extras.py,sha256=
|
|
118
|
-
ck/utils/local_config.py,sha256
|
|
127
|
+
ck/utils/iter_extras.py,sha256=4OwHqOsChnJzTwejqU6Dl4NQX0OOd37ThOltx1NlBUc,4492
|
|
128
|
+
ck/utils/local_config.py,sha256=U-Yt4XW5kjXQmF0X6IPJqq0RgSPWeitA7ggomjpG6HM,9600
|
|
119
129
|
ck/utils/map_list.py,sha256=T2OpjI7eDgC4geCtW_FsEr6ryiePOnKZwfDahB63zfA,3847
|
|
120
130
|
ck/utils/map_set.py,sha256=BLu9BO3FCtzZlZ9MfP9STtIdQ4Me8-QKdwB7o15y7f8,3809
|
|
121
131
|
ck/utils/np_extras.py,sha256=Dt9Y-afUYIf_z5PBQOzh22pg8jRt-DKm2n5jJ6APIdA,1752
|
|
@@ -175,8 +185,8 @@ ck_demos/utils/compare.py,sha256=Bwjpflevl4nusfA0zp96rInaVKFGuhC5Xv7HzA1Fobk,508
|
|
|
175
185
|
ck_demos/utils/convert_network.py,sha256=TSKj8q7L7J5rhrvwjaDkdYZ0Sg8vV5FRL_vCanX1CQw,1363
|
|
176
186
|
ck_demos/utils/sample_model.py,sha256=in-Nlv-iuNIu6y9fDuMyo7nzgimBuTAnCWcpnVqvqDQ,8839
|
|
177
187
|
ck_demos/utils/stop_watch.py,sha256=VzXHRWx0V8vPSD-bLgLlEYkCkR2FA0-KmM_pfKx-Pxo,13205
|
|
178
|
-
compiled_knowledge-4.
|
|
179
|
-
compiled_knowledge-4.
|
|
180
|
-
compiled_knowledge-4.
|
|
181
|
-
compiled_knowledge-4.
|
|
182
|
-
compiled_knowledge-4.
|
|
188
|
+
compiled_knowledge-4.1.0a1.dist-info/licenses/LICENSE.txt,sha256=uMYx7tmroEKNASizbCOwPveMQsD5UErLDC1_SANmNn8,1089
|
|
189
|
+
compiled_knowledge-4.1.0a1.dist-info/METADATA,sha256=e9hWaS-X8HETgzi758WKtE4m-iXA75YTeOIL4SGKQQo,1837
|
|
190
|
+
compiled_knowledge-4.1.0a1.dist-info/WHEEL,sha256=LwxTQZ0gyDP_uaeNCLm-ZIktY9hv6x0e22Q-hgFd-po,97
|
|
191
|
+
compiled_knowledge-4.1.0a1.dist-info/top_level.txt,sha256=Cf8DAfd2vcnLiA7HlxoduOzV0Q-8surE3kzX8P9qdks,12
|
|
192
|
+
compiled_knowledge-4.1.0a1.dist-info/RECORD,,
|
|
File without changes
|
{compiled_knowledge-4.0.0a24.dist-info → compiled_knowledge-4.1.0a1.dist-info}/licenses/LICENSE.txt
RENAMED
|
File without changes
|
{compiled_knowledge-4.0.0a24.dist-info → compiled_knowledge-4.1.0a1.dist-info}/top_level.txt
RENAMED
|
File without changes
|