relationalai 0.12.4__tar.gz → 0.12.6__tar.gz
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.
- {relationalai-0.12.4 → relationalai-0.12.6}/PKG-INFO +1 -1
- {relationalai-0.12.4 → relationalai-0.12.6}/pyproject.toml +1 -2
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/__init__.py +4 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/snowflake.py +23 -11
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/README.md +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/__init__.py +0 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/basic_example.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/paths_benchmark.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/paths_example.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/pattern_to_automaton.py +1 -1
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/one_sided_ball_repetition.py +1 -1
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/single.py +3 -3
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/two_sided_balls_repetition.py +1 -1
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/two_sided_balls_upto.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/usp-old.py +3 -3
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/usp-tuple.py +3 -3
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/usp.py +3 -3
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_limit_sp_max_length.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_limit_sp_multiple.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_limit_sp_single.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_limit_walks_multiple.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_limit_walks_single.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_repetition_multiple.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_repetition_single.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_upto_multiple.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_upto_single.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_single_paths.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_single_walks.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_single_walks_undirected.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_repetition_multiple.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_repetition_single.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_upto_multiple.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_upto_single.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_usp_nsp_multiple.py +2 -2
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/tests/tests_usp_nsp_single.py +2 -2
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/__init__.py +4 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/internal/annotations.py +1 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/internal/internal.py +2 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/builtins.py +1 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/model2lqp.py +96 -3
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/primitives.py +3 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/builtins.py +50 -1
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/typer/typer.py +3 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/__init__.py +4 -0
- relationalai-0.12.6/src/relationalai/semantics/reasoners/experimental/__init__.py +7 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/graph/core.py +1154 -122
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/rel/builtins.py +3 -1
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/rel/rel_utils.py +5 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/compiler.py +6 -0
- relationalai-0.12.4/src/relationalai/early_access/paths/__init__.py +0 -22
- relationalai-0.12.4/src/relationalai/early_access/paths/api/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/benchmarks/__init__.py +0 -13
- relationalai-0.12.4/src/relationalai/early_access/paths/graph/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/find_paths/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/one_sided_ball_repetition/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/one_sided_ball_upto/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/single/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/two_sided_balls_repetition/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/two_sided_balls_upto/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/usp/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/early_access/paths/rpq/__init__.py +0 -13
- relationalai-0.12.4/src/relationalai/early_access/paths/utilities/iterators/__init__.py +0 -12
- relationalai-0.12.4/src/relationalai/experimental/paths/__init__.py +0 -309
- relationalai-0.12.4/src/relationalai/experimental/paths/pathfinder.rel +0 -2560
- relationalai-0.12.4/src/relationalai/semantics/reasoners/graph/paths/path_algorithms/__init__.py +0 -3
- relationalai-0.12.4/src/relationalai/semantics/reasoners/graph/paths/utilities/__init__.py +0 -3
- {relationalai-0.12.4 → relationalai-0.12.6}/.gitignore +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/LICENSE +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/docs/pypi/README.md +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/frontend/debugger/dist/.gitignore +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/frontend/debugger/dist/assets/favicon-Dy0ZgA6N.png +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/frontend/debugger/dist/assets/index-Cssla-O7.js +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/frontend/debugger/dist/assets/index-DlHsYx1V.css +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/frontend/debugger/dist/index.html +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/events/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/procedures/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/procedures/procedure.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/rel/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/tables/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/tasks/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/raitoolkit/tasks/task.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/analysis/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/analysis/mechanistic.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/analysis/whynot.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/auth/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/auth/jwt_generator.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/auth/oauth_callback_server.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/auth/token_handler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/auth/util.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/azure.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/cache_store.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/client.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/config.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/direct_access_client.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/export_procedure.py.jinja +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/hash_util.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/profile_polling.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/result_helpers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/types.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/use_index_poller.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/clients/util.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/compiler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/debugging.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/dependencies.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/docutils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/dsl.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/builder/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/snowflake/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/std/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/std/decimals/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/std/integers/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/std/math/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/builder/std/strings/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/devtools/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/devtools/benchmark_lqp/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/devtools/extract_lqp/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/orm/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/orm/adapter_qb.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/orm/model.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/orm/parser.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/owl/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/owl/adapter.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/owl/model.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/adapters/owl/parser.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/bindings/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/bindings/common.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/bindings/csv.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/bindings/legacy/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/bindings/legacy/binding_models.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/bindings/snowflake.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/codegen/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/codegen/binder.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/codegen/common.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/codegen/helpers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/codegen/relations.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/codegen/weaver.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/constants.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/builders/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/builders/logic.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/builders/scalar_constraint.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/constraints/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/constraints/predicate/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/constraints/predicate/atomic.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/constraints/predicate/universal.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/constraints/scalar.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/context.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/cset.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/exprs/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/exprs/relational.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/exprs/scalar.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/instances.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/logic/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/logic/aggregation.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/logic/exists.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/logic/helper.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/namespaces.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/relations.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/rules.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/stack.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/std/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/temporal/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/temporal/recall.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/concepts.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/constrained/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/constrained/nominal.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/constrained/subtype.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/standard.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/unconstrained.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/types/variables.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/core/utils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ir/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ir/compiler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ir/executor.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/constraints.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/export.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/models.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/python_printer.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/raw_source.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/readings.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/relationships.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/roles.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/ontologies/subtyping.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/constraints.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/measures/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/measures/dimensions.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/measures/initializer.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/measures/measure_rules.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/measures/measures.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/measures/role_exprs.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/models.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/object_oriented_printer.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/printer.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/reasoner_errors.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/reasoners.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/relations.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/relationships.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/types.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/utils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/orm/verb.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/physical_metadata/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/physical_metadata/tables.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/relations.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/rulesets.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/schemas/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/schemas/builder.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/schemas/comp_names.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/schemas/components.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/schemas/contexts.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/schemas/exprs.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/schemas/fragments.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/serialization.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/serialize/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/serialize/binding_model.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/serialize/exporter.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/serialize/model.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/snow/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/snow/api.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/snow/common.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/state_mgmt/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/state_mgmt/state_charts.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/state_mgmt/transitions.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/types/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/types/concepts.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/types/entities.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/types/values.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/dsl/utils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/graphs/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/compiler/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/constructors/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/executor/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/ir/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/passes/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/pragmas/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/primitives/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/types/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/utils/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/lqp/validators/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/builtins/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/compiler/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/dependency/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/factory/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/helpers/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/ir/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/rewrite/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/typer/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/typer/typer/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/types/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/util/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/metamodel/visitor/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/rel/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/rel/executor/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/rel/rel_utils/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/rel/rewrite/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/solvers/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/sql/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/sql/executor/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/sql/rewrite/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/tests/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/tests/logging/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/tests/test_snapshot_base/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/early_access/tests/utils/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/base.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/ci.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/colab.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/generic.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/hex.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/ipython.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/jupyter.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/snowbook.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/environments/terminal.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/errors.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/SF.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/graphs.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/inspect.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/api.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/automaton.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/bridge.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/compiler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/datalog.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/diagnostics.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/filter.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/glushkov.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/options.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/pathfinder-v0.7.0.rel +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/rpq.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/transition.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/pathfinder/utils.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/api.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/benchmarks/__init__.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/benchmarks/grid_graph.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/code_organization.md +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/Movies.ipynb +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/minimal_engine_warmup.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movie_example.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/actedin.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/directed.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/follows.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/movies.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/person.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/produced.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/ratings.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/examples/movies_data/wrote.csv +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/find_paths_via_automaton.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/graph.py +0 -0
- {relationalai-0.12.4/src/relationalai/early_access → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/__init__.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/find_paths.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/path_algorithms/one_sided_ball_upto.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/product_graph.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/rpq/__init__.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/rpq/automaton.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/rpq/diagnostics.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/rpq/filter.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/rpq/glushkov.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/rpq/rpq.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/rpq/transition.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/paths/tree_agg.py +0 -0
- {relationalai-0.12.4/src/relationalai/early_access → relationalai-0.12.6/src/relationalai/experimental}/paths/utilities/__init__.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/utilities/iterators.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/utilities/prefix_sum.py +0 -0
- {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.6/src/relationalai/experimental}/paths/utilities/utilities.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/experimental/solvers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/loaders/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/loaders/csv.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/loaders/loader.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/loaders/types.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/metagen.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/metamodel.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/rel.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/rel_emitter.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/rel_utils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/designs/query_builder/identify_by.md +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/devtools/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/devtools/benchmark_lqp.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/devtools/compilation_manager.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/devtools/extract_lqp.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/internal/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/internal/snowflake.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/compiler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/constructors.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/executor.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/intrinsics.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/ir.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/passes.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/pragmas.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/result_helpers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/rewrite/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/rewrite/cdc.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/rewrite/extract_common.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/rewrite/extract_keys.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/rewrite/fd_constraints.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/rewrite/quantify_vars.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/rewrite/splinter.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/types.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/utils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/lqp/validators.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/compiler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/dataflow.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/dependency.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/executor.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/factory.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/helpers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/ir.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/rewrite/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/rewrite/discharge_constraints.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/rewrite/dnf_union_splitter.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/rewrite/extract_nested_logicals.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/rewrite/flatten.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/typer/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/typer/checker.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/types.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/util.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/metamodel/visitor.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/graph/README.md +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/graph/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/graph/design/beyond_demand_transform.md +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/graph/tests/README.md +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/optimization/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/optimization/common.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/optimization/solvers_dev.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/reasoners/optimization/solvers_pb.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/rel/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/rel/compiler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/rel/executor.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/rel/rel.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/snowflake/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/executor/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/executor/duck_db.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/executor/result_helpers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/executor/snowflake.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/rewrite/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/rewrite/denormalize.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/rewrite/double_negation.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/rewrite/recursive_union.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/rewrite/sort_output_query.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/sql/sql.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/constraints.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/datetime.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/decimals.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/floats.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/integers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/math.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/pragmas.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/re.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/std.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/std/strings.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/tests/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/tests/logging.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/tests/test_snapshot_abstract.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/tests/test_snapshot_base.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/semantics/tests/utils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/aggregates.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/dates.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/graphs.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/inspect.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/math.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/re.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/std/strings.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/cleanup_snapshots.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/cli.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/cli_controls.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/cli_helpers.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/constants.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/debugger.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/debugger_client.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/debugger_server.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/dev.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/notes +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/qb_debugger.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/query_utils.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/tools/snapshot_viewer.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/clean_up_databases.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/constants.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/format.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/graph.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/list_databases.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/otel_configuration.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/otel_handler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/snowflake_handler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/span_format_test.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/span_tracker.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/spans_file_handler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/timeout.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai/util/tracing_handler.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai_test_util/__init__.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai_test_util/fixtures.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai_test_util/snapshot.py +0 -0
- {relationalai-0.12.4 → relationalai-0.12.6}/src/relationalai_test_util/traceback.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = 'relationalai'
|
|
3
|
-
version = '0.12.
|
|
3
|
+
version = '0.12.6'
|
|
4
4
|
description = 'RelationalAI Library and CLI'
|
|
5
5
|
readme="docs/pypi/README.md"
|
|
6
6
|
authors = [
|
|
@@ -94,7 +94,6 @@ allow-direct-references = true
|
|
|
94
94
|
only-include = ["src"]
|
|
95
95
|
[tool.hatch.build.targets.sdist.force-include]
|
|
96
96
|
"frontend/debugger/dist" = "frontend/debugger/dist"
|
|
97
|
-
"src/relationalai/experimental/paths/pathfinder.rel" = "src/relationalai/experimental/paths/pathfinder.rel"
|
|
98
97
|
|
|
99
98
|
[tool.hatch.build.targets.wheel]
|
|
100
99
|
packages = ["src/relationalai", "src/relationalai_test_util"]
|
|
@@ -834,19 +834,25 @@ Otherwise, remove it from your '{profile}' configuration profile.
|
|
|
834
834
|
program_span_id: str | None = None,
|
|
835
835
|
headers: Dict | None = None,
|
|
836
836
|
):
|
|
837
|
-
"""Only call
|
|
837
|
+
"""Only call poll() if there are sources to process and cache is not valid."""
|
|
838
838
|
sources_list = list(sources)
|
|
839
839
|
self.database = model
|
|
840
840
|
if sources_list:
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
841
|
+
poller = UseIndexPoller(
|
|
842
|
+
self,
|
|
843
|
+
app_name,
|
|
844
|
+
sources_list,
|
|
845
|
+
model,
|
|
846
|
+
engine_name,
|
|
847
|
+
engine_size,
|
|
848
|
+
self.language,
|
|
849
|
+
program_span_id,
|
|
850
|
+
headers,
|
|
851
|
+
self.generation
|
|
849
852
|
)
|
|
853
|
+
# If cache is valid (data freshness has not expired), skip polling
|
|
854
|
+
if not poller.cache.is_valid():
|
|
855
|
+
return poller.poll()
|
|
850
856
|
|
|
851
857
|
#--------------------------------------------------
|
|
852
858
|
# Models
|
|
@@ -3450,19 +3456,25 @@ class DirectAccessResources(Resources):
|
|
|
3450
3456
|
program_span_id: str | None = None,
|
|
3451
3457
|
headers: Dict | None = None,
|
|
3452
3458
|
):
|
|
3453
|
-
"""Only call
|
|
3459
|
+
"""Only call poll() if there are sources to process and cache is not valid."""
|
|
3454
3460
|
sources_list = list(sources)
|
|
3455
3461
|
self.database = model
|
|
3456
3462
|
if sources_list:
|
|
3457
|
-
|
|
3463
|
+
poller = DirectUseIndexPoller(
|
|
3464
|
+
self,
|
|
3458
3465
|
app_name=app_name,
|
|
3459
3466
|
sources=sources_list,
|
|
3460
3467
|
model=model,
|
|
3461
3468
|
engine_name=engine_name,
|
|
3462
3469
|
engine_size=engine_size,
|
|
3470
|
+
language=self.language,
|
|
3463
3471
|
program_span_id=program_span_id,
|
|
3464
3472
|
headers=headers,
|
|
3473
|
+
generation=self.generation,
|
|
3465
3474
|
)
|
|
3475
|
+
# If cache is valid (data freshness has not expired), skip polling
|
|
3476
|
+
if not poller.cache.is_valid():
|
|
3477
|
+
return poller.poll()
|
|
3466
3478
|
|
|
3467
3479
|
def _check_exec_async_status(self, txn_id: str, headers: Dict[str, str] | None = None) -> bool:
|
|
3468
3480
|
"""Check whether the given transaction has completed."""
|
|
@@ -12,8 +12,8 @@ The following is a minimal working example:
|
|
|
12
12
|
from relationalai.semantics import Model, Integer, select, String, where, define
|
|
13
13
|
from relationalai.semantics.std import strings
|
|
14
14
|
|
|
15
|
-
from relationalai.
|
|
16
|
-
from relationalai.
|
|
15
|
+
from relationalai.experimental.paths.graph import Graph
|
|
16
|
+
from relationalai.experimental.paths.api import node, edge, path, star, match
|
|
17
17
|
|
|
18
18
|
model = Model("my_paths")
|
|
19
19
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, select, String, define
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.api import path, star, match
|
|
4
4
|
|
|
5
5
|
# Create an automaton that matches paths with pattern: A(A*)B:
|
|
6
6
|
pattern = path("A", star("A"), "B")
|
|
@@ -4,8 +4,8 @@ Example usage of automaton-based pathfinding.
|
|
|
4
4
|
|
|
5
5
|
import time
|
|
6
6
|
from relationalai.semantics import Model, Integer, select, String, define
|
|
7
|
-
from relationalai.
|
|
8
|
-
from relationalai.
|
|
7
|
+
from relationalai.experimental.paths.graph import Graph
|
|
8
|
+
from relationalai.experimental.paths.api import node, path, match
|
|
9
9
|
|
|
10
10
|
import argparse
|
|
11
11
|
|
|
@@ -4,8 +4,8 @@ Example usage of automaton-based pathfinding.
|
|
|
4
4
|
|
|
5
5
|
import time
|
|
6
6
|
from relationalai.semantics import Model, Integer, select, String, define
|
|
7
|
-
from relationalai.
|
|
8
|
-
from relationalai.
|
|
7
|
+
from relationalai.experimental.paths.graph import Graph
|
|
8
|
+
from relationalai.experimental.paths.api import node, path, match
|
|
9
9
|
|
|
10
10
|
import argparse
|
|
11
11
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# For builder components.
|
|
2
2
|
from relationalai.semantics import Integer, define
|
|
3
|
-
from relationalai.
|
|
3
|
+
from relationalai.experimental.paths.graph import Graph
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
def ball_with_repetition(g:Graph, Source, max_length):
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# For builder components.
|
|
2
2
|
from relationalai.semantics import Integer, where, define, select, min
|
|
3
|
-
from relationalai.
|
|
4
|
-
from relationalai.
|
|
5
|
-
from relationalai.
|
|
3
|
+
from relationalai.experimental.paths.graph import Graph
|
|
4
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
|
|
5
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_upto import ball_upto
|
|
6
6
|
|
|
7
7
|
# find a (deterministic) path from src to dst inside the given ball
|
|
8
8
|
# where dst is at distance radius from src
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# For builder components.
|
|
2
2
|
from relationalai.semantics import Integer, define
|
|
3
|
-
from relationalai.
|
|
3
|
+
from relationalai.experimental.paths.graph import Graph
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
def two_balls_repetition(g:Graph, Source, Target, max_length):
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# For builder components.
|
|
2
2
|
from relationalai.semantics import Integer, define, not_, count
|
|
3
|
-
from relationalai.
|
|
4
|
-
from relationalai.
|
|
3
|
+
from relationalai.experimental.paths.graph import Graph
|
|
4
|
+
from relationalai.experimental.paths.utilities.iterators import setup_iteration
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
def two_balls_upto(g:Graph, Source, Target, max_length=None):
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# For builder components.
|
|
2
2
|
from relationalai.semantics import Integer, define, max, sum, not_
|
|
3
|
-
from relationalai.
|
|
4
|
-
from relationalai.
|
|
5
|
-
from relationalai.
|
|
3
|
+
from relationalai.experimental.paths.graph import Graph
|
|
4
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_upto import ball_upto
|
|
5
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
def compute_usp(g: Graph, Source, Target, max_length = None):
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# For builder components.
|
|
2
2
|
from relationalai.semantics import Model, Integer, define, max, sum, select, not_
|
|
3
|
-
from relationalai.
|
|
4
|
-
from relationalai.
|
|
5
|
-
from relationalai.
|
|
3
|
+
from relationalai.experimental.paths.graph import Graph
|
|
4
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_upto import ball_upto
|
|
5
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
def compute_usp(g: Graph, Source, Target, max_length = None):
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# For builder components.
|
|
2
2
|
from relationalai.semantics import Integer, define, sum, not_
|
|
3
|
-
from relationalai.
|
|
4
|
-
from relationalai.
|
|
5
|
-
from relationalai.
|
|
3
|
+
from relationalai.experimental.paths.graph import Graph
|
|
4
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_upto import ball_upto
|
|
5
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
def compute_usp(g: Graph, Source, Target, max_length=None):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select, count
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.find_paths import find_shortest_paths
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select, count
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.find_paths import find_shortest_paths
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select, count
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.find_paths import find_shortest_paths
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select, count
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.find_paths import find_walks
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select, count
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.find_paths import find_walks
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# Test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# Test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_upto import ball_upto
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test with grid graph and multiple source and target nodes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.one_sided_ball_upto import ball_upto
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.single import single_shortest_path
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
model = Model("test_single_paths", dry_run=False)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.single import single_walk
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
model = Model("test_single_paths", dry_run=False)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.single import single_walk
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
model = Model("test_single_paths", dry_run=False)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.two_sided_balls_repetition import two_balls_repetition
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# Test with diamond graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.two_sided_balls_repetition import two_balls_repetition
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# Test with diamond graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.two_sided_balls_upto import two_balls_upto
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# Test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.two_sided_balls_upto import two_balls_upto
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# Test with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.usp import compute_usp, compute_nsp
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test for usp with grid graph
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from relationalai.semantics import Model, Integer, define, select
|
|
2
|
-
from relationalai.
|
|
3
|
-
from relationalai.
|
|
2
|
+
from relationalai.experimental.paths.graph import Graph
|
|
3
|
+
from relationalai.experimental.paths.path_algorithms.usp import compute_usp, compute_nsp
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
# First test for usp with grid graph
|
|
@@ -3419,6 +3419,8 @@ class Compiler():
|
|
|
3419
3419
|
return out
|
|
3420
3420
|
|
|
3421
3421
|
elif isinstance(item, TypeRef):
|
|
3422
|
+
if isinstance(item._thing, Relationship):
|
|
3423
|
+
return self.to_relation(item._thing)
|
|
3422
3424
|
concept = to_type(item)
|
|
3423
3425
|
if not concept:
|
|
3424
3426
|
raise ValueError(f"Cannot find concept for {item}, {type(item)}")
|
|
@@ -253,7 +253,7 @@ def _translate_rank(ctx: TranslationCtx, rank: ir.Rank, body: lqp.Formula) -> lq
|
|
|
253
253
|
# to convert it to Int128.
|
|
254
254
|
result_var, _ = _translate_term(ctx, rank.result)
|
|
255
255
|
# The primitive will return an Int64 result, so we need a var to hold the intermediary.
|
|
256
|
-
result_64_var = gen_unique_var(ctx, "
|
|
256
|
+
result_64_var = gen_unique_var(ctx, "rank_result_64")
|
|
257
257
|
result_64_type = mk_type(lqp.TypeName.INT)
|
|
258
258
|
|
|
259
259
|
cast = lqp.Cast(input=result_64_var, result=result_var, meta=None)
|
|
@@ -273,7 +273,7 @@ def _translate_descending_rank(ctx: TranslationCtx, limit: int, result: lqp.Var,
|
|
|
273
273
|
result_type = mk_type(lqp.TypeName.INT)
|
|
274
274
|
|
|
275
275
|
# Rename abstracted args in the body to new variable names
|
|
276
|
-
var_map = {var.name: gen_unique_var(ctx, var.name) for (var, _) in abstr_args}
|
|
276
|
+
var_map = {var.name: gen_unique_var(ctx, 't_' + var.name) for (var, _) in abstr_args}
|
|
277
277
|
body = utils.rename_vars_formula(body, var_map)
|
|
278
278
|
new_abstr_args = [(var_map[var.name], typ) for (var, typ) in abstr_args]
|
|
279
279
|
|
|
@@ -340,7 +340,7 @@ def _translate_ascending_rank(ctx: TranslationCtx, limit: int, result_var: lqp.V
|
|
|
340
340
|
terms = [result_var] + [v[0] for v in abstr_args]
|
|
341
341
|
|
|
342
342
|
# Rename abstracted args in the body to new variable names
|
|
343
|
-
var_map = {var.name: gen_unique_var(ctx, var.name) for (var, _) in abstr_args}
|
|
343
|
+
var_map = {var.name: gen_unique_var(ctx, 't_' + var.name) for (var, _) in abstr_args}
|
|
344
344
|
body = utils.rename_vars_formula(body, var_map)
|
|
345
345
|
new_abstr_args = [(var_map[var.name], typ) for (var, typ) in abstr_args]
|
|
346
346
|
sort_abstr = mk_abstraction(new_abstr_args, body)
|
|
@@ -461,6 +461,7 @@ def _translate_aggregate(ctx: TranslationCtx, aggr: ir.Aggregate, body: lqp.Form
|
|
|
461
461
|
# `input_args`` hold the types of the input arguments, but they may have been modified
|
|
462
462
|
# if we're dealing with a count, so we use `abstr_args` to find the type.
|
|
463
463
|
(aggr_arg, aggr_arg_type) = abstr_args[-1]
|
|
464
|
+
|
|
464
465
|
# Group-bys do not need to be handled at all, since they are introduced outside already
|
|
465
466
|
reduce = lqp.Reduce(
|
|
466
467
|
op=lqp_operator(ctx.var_names, aggr.aggregation.name, aggr_arg.name, aggr_arg_type),
|
|
@@ -542,6 +543,12 @@ def _translate_to_atom(ctx: TranslationCtx, task: ir.Lookup) -> lqp.Formula:
|
|
|
542
543
|
|
|
543
544
|
if task.relation == builtins.join:
|
|
544
545
|
return _translate_join(ctx, task)
|
|
546
|
+
elif task.relation == builtins.infomap:
|
|
547
|
+
return _translate_infomap(ctx, task)
|
|
548
|
+
elif task.relation == builtins.louvain:
|
|
549
|
+
return _translate_louvain(ctx, task)
|
|
550
|
+
elif task.relation == builtins.label_propagation:
|
|
551
|
+
return _translate_label_propagation(ctx, task)
|
|
545
552
|
|
|
546
553
|
terms = []
|
|
547
554
|
term_types = []
|
|
@@ -667,6 +674,92 @@ def _extract_pyrel_error_ids(ctx: TranslationCtx, model: ir.Model) -> list[Tuple
|
|
|
667
674
|
|
|
668
675
|
return pyrel_error_attrs
|
|
669
676
|
|
|
677
|
+
# Translate a relation reference into an abstraction over its fields.
|
|
678
|
+
def _translate_relation_ref(ctx: TranslationCtx, relation: ir.Relation) -> lqp.Abstraction:
|
|
679
|
+
projection = []
|
|
680
|
+
for field in relation.fields:
|
|
681
|
+
var = gen_unique_var(ctx, field.name)
|
|
682
|
+
typ = meta_type_to_lqp(field.type)
|
|
683
|
+
projection.append((var, typ))
|
|
684
|
+
|
|
685
|
+
rid = get_relation_id(ctx, relation, projection)
|
|
686
|
+
atom = lqp.Atom(name=rid, terms=[var for (var, _) in projection], meta=None)
|
|
687
|
+
return mk_abstraction(projection, atom)
|
|
688
|
+
|
|
689
|
+
# Common translation logic for graph algorithms.
|
|
690
|
+
# task.args[0] : normalized weight list (int64, int64, float)
|
|
691
|
+
# task.args[1] : normalized node count (relation or constant int64)
|
|
692
|
+
# task.args[2] : normalized edge count (relation or constant int64)
|
|
693
|
+
# task.args[3:-3] : algorithm parameters (var or constant)
|
|
694
|
+
# task.args[-3] : diagnostic info
|
|
695
|
+
# task.args[-2] : node index
|
|
696
|
+
# task.args[-1] : community ident
|
|
697
|
+
def _translate_graph_common(name: str, ctx: TranslationCtx, task: ir.Lookup):
|
|
698
|
+
abstractions = []
|
|
699
|
+
|
|
700
|
+
assert isinstance(task.args[0], ir.Relation), \
|
|
701
|
+
f"Expected relation as first arg to {name}, got {task.args[0]}:{type(task.args[0])}"
|
|
702
|
+
abstractions.append(_translate_relation_ref(ctx, task.args[0]))
|
|
703
|
+
|
|
704
|
+
# Allow constant args for node and edge count
|
|
705
|
+
for arg in task.args[1:3]:
|
|
706
|
+
if isinstance(arg, ir.Relation):
|
|
707
|
+
abst = _translate_relation_ref(ctx, arg)
|
|
708
|
+
typ = abst.vars[0][1]
|
|
709
|
+
assert typ.type_name == lqp.TypeName.INT, \
|
|
710
|
+
f"Expected Int64 types for node and edge counts, got type {typ.type_name}"
|
|
711
|
+
abstractions.append(abst)
|
|
712
|
+
else:
|
|
713
|
+
var, typ, eq = binding_to_lqp_var(ctx, arg)
|
|
714
|
+
assert eq is not None, \
|
|
715
|
+
f"Expected equality formula for {name} arg {arg}:{type(arg)}"
|
|
716
|
+
abstractions.append(mk_abstraction([(var, typ)], mk_and([eq])))
|
|
717
|
+
|
|
718
|
+
for arg in task.args[3:-3]:
|
|
719
|
+
var, typ, eq = binding_to_lqp_var(ctx, arg)
|
|
720
|
+
if eq:
|
|
721
|
+
abstractions.append(mk_abstraction([(var, typ)], mk_and([eq])))
|
|
722
|
+
else:
|
|
723
|
+
print(f"Primitive graph algorithm arg without eq:\n var:{var}, typ:{typ}\n arg:{arg}:{type(arg)}")
|
|
724
|
+
abstractions.append(mk_abstraction([(var, typ)], mk_and([])))
|
|
725
|
+
|
|
726
|
+
terms = []
|
|
727
|
+
for arg in task.args[-3:]:
|
|
728
|
+
term, _ = _translate_relterm(ctx, arg)
|
|
729
|
+
terms.append(term)
|
|
730
|
+
|
|
731
|
+
return (abstractions, terms)
|
|
732
|
+
|
|
733
|
+
def _translate_infomap(ctx: TranslationCtx, task: ir.Lookup) -> lqp.Formula:
|
|
734
|
+
abstractions, terms = _translate_graph_common("infomap", ctx, task)
|
|
735
|
+
|
|
736
|
+
return lqp.FFI(
|
|
737
|
+
meta=None,
|
|
738
|
+
name="rel_primitive_infomap",
|
|
739
|
+
args=abstractions,
|
|
740
|
+
terms=terms,
|
|
741
|
+
)
|
|
742
|
+
|
|
743
|
+
def _translate_louvain(ctx: TranslationCtx, task: ir.Lookup) -> lqp.Formula:
|
|
744
|
+
abstractions, terms = _translate_graph_common("louvain", ctx, task)
|
|
745
|
+
|
|
746
|
+
return lqp.FFI(
|
|
747
|
+
meta=None,
|
|
748
|
+
name="rel_primitive_louvain",
|
|
749
|
+
args=abstractions,
|
|
750
|
+
terms=terms,
|
|
751
|
+
)
|
|
752
|
+
|
|
753
|
+
def _translate_label_propagation(ctx: TranslationCtx, task: ir.Lookup) -> lqp.Formula:
|
|
754
|
+
abstractions, terms = _translate_graph_common("label_propagation", ctx, task)
|
|
755
|
+
|
|
756
|
+
return lqp.FFI(
|
|
757
|
+
meta=None,
|
|
758
|
+
name="rel_primitive_async_label_propagation",
|
|
759
|
+
args=abstractions,
|
|
760
|
+
terms=terms,
|
|
761
|
+
)
|
|
762
|
+
|
|
670
763
|
# Hard-coded implementation of Rel's string_join
|
|
671
764
|
def _translate_join(ctx: TranslationCtx, task: ir.Lookup) -> lqp.Formula:
|
|
672
765
|
assert len(task.args) == 3
|
|
@@ -96,6 +96,9 @@ rel_to_lqp = {
|
|
|
96
96
|
"split": "rel_primitive_string_split",
|
|
97
97
|
"split_part": "rel_primitive_string_split",
|
|
98
98
|
"regex_match": "rel_primitive_regex_match",
|
|
99
|
+
"infomap": "rel_primitive_infomap",
|
|
100
|
+
"louvain": "rel_primitive_louvain",
|
|
101
|
+
"label_propagation": "rel_primitive_async_label_propagation",
|
|
99
102
|
}
|
|
100
103
|
|
|
101
104
|
primitive_type_reorderings = {
|