relationalai 0.12.4__tar.gz → 0.12.7__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.
Files changed (471) hide show
  1. {relationalai-0.12.4 → relationalai-0.12.7}/PKG-INFO +2 -2
  2. {relationalai-0.12.4 → relationalai-0.12.7}/pyproject.toml +9 -3
  3. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/__init__.py +4 -0
  4. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/snowflake.py +34 -13
  5. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/constructors/__init__.py +2 -2
  6. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/rewrite/__init__.py +2 -2
  7. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/README.md +2 -2
  8. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/__init__.py +0 -2
  9. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/basic_example.py +2 -2
  10. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/paths_benchmark.py +2 -2
  11. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/paths_example.py +2 -2
  12. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/pattern_to_automaton.py +1 -1
  13. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/one_sided_ball_repetition.py +1 -1
  14. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/single.py +3 -3
  15. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/two_sided_balls_repetition.py +1 -1
  16. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/two_sided_balls_upto.py +2 -2
  17. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/usp-old.py +3 -3
  18. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/usp-tuple.py +3 -3
  19. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/usp.py +3 -3
  20. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_limit_sp_max_length.py +2 -2
  21. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_limit_sp_multiple.py +2 -2
  22. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_limit_sp_single.py +2 -2
  23. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_limit_walks_multiple.py +2 -2
  24. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_limit_walks_single.py +2 -2
  25. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_repetition_multiple.py +2 -2
  26. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_repetition_single.py +2 -2
  27. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_upto_multiple.py +2 -2
  28. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_one_sided_ball_upto_single.py +2 -2
  29. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_single_paths.py +2 -2
  30. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_single_walks.py +2 -2
  31. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_single_walks_undirected.py +2 -2
  32. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_repetition_multiple.py +2 -2
  33. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_repetition_single.py +2 -2
  34. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_upto_multiple.py +2 -2
  35. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_two_sided_balls_upto_single.py +2 -2
  36. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_usp_nsp_multiple.py +2 -2
  37. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/tests/tests_usp_nsp_single.py +2 -2
  38. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/__init__.py +4 -0
  39. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/internal/annotations.py +1 -0
  40. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/internal/internal.py +3 -4
  41. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/internal/snowflake.py +14 -1
  42. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/builtins.py +1 -0
  43. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/constructors.py +0 -5
  44. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/executor.py +34 -10
  45. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/intrinsics.py +2 -2
  46. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/model2lqp.py +105 -9
  47. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/passes.py +27 -8
  48. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/primitives.py +18 -15
  49. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/rewrite/__init__.py +2 -2
  50. relationalai-0.12.4/src/relationalai/semantics/lqp/rewrite/fd_constraints.py → relationalai-0.12.7/src/relationalai/semantics/lqp/rewrite/function_annotations.py +4 -4
  51. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/utils.py +17 -13
  52. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/builtins.py +50 -1
  53. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/typer/typer.py +3 -0
  54. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/__init__.py +4 -0
  55. relationalai-0.12.7/src/relationalai/semantics/reasoners/experimental/__init__.py +7 -0
  56. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/graph/core.py +1154 -122
  57. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/rel/builtins.py +3 -1
  58. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/rel/compiler.py +2 -2
  59. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/rel/executor.py +30 -8
  60. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/rel/rel_utils.py +5 -0
  61. relationalai-0.12.7/src/relationalai/semantics/snowflake/__init__.py +3 -0
  62. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/compiler.py +6 -0
  63. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/executor/snowflake.py +6 -2
  64. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/tests/test_snapshot_abstract.py +5 -4
  65. relationalai-0.12.4/src/relationalai/early_access/paths/__init__.py +0 -22
  66. relationalai-0.12.4/src/relationalai/early_access/paths/api/__init__.py +0 -12
  67. relationalai-0.12.4/src/relationalai/early_access/paths/benchmarks/__init__.py +0 -13
  68. relationalai-0.12.4/src/relationalai/early_access/paths/graph/__init__.py +0 -12
  69. relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/find_paths/__init__.py +0 -12
  70. relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/one_sided_ball_repetition/__init__.py +0 -12
  71. relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/one_sided_ball_upto/__init__.py +0 -12
  72. relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/single/__init__.py +0 -12
  73. relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/two_sided_balls_repetition/__init__.py +0 -12
  74. relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/two_sided_balls_upto/__init__.py +0 -12
  75. relationalai-0.12.4/src/relationalai/early_access/paths/path_algorithms/usp/__init__.py +0 -12
  76. relationalai-0.12.4/src/relationalai/early_access/paths/rpq/__init__.py +0 -13
  77. relationalai-0.12.4/src/relationalai/early_access/paths/utilities/iterators/__init__.py +0 -12
  78. relationalai-0.12.4/src/relationalai/experimental/paths/__init__.py +0 -309
  79. relationalai-0.12.4/src/relationalai/experimental/paths/pathfinder.rel +0 -2560
  80. relationalai-0.12.4/src/relationalai/semantics/reasoners/graph/paths/path_algorithms/__init__.py +0 -3
  81. relationalai-0.12.4/src/relationalai/semantics/reasoners/graph/paths/utilities/__init__.py +0 -3
  82. relationalai-0.12.4/src/relationalai/semantics/snowflake/__init__.py +0 -3
  83. {relationalai-0.12.4 → relationalai-0.12.7}/.gitignore +0 -0
  84. {relationalai-0.12.4 → relationalai-0.12.7}/LICENSE +0 -0
  85. {relationalai-0.12.4 → relationalai-0.12.7}/docs/pypi/README.md +0 -0
  86. {relationalai-0.12.4 → relationalai-0.12.7}/frontend/debugger/dist/.gitignore +0 -0
  87. {relationalai-0.12.4 → relationalai-0.12.7}/frontend/debugger/dist/assets/favicon-Dy0ZgA6N.png +0 -0
  88. {relationalai-0.12.4 → relationalai-0.12.7}/frontend/debugger/dist/assets/index-Cssla-O7.js +0 -0
  89. {relationalai-0.12.4 → relationalai-0.12.7}/frontend/debugger/dist/assets/index-DlHsYx1V.css +0 -0
  90. {relationalai-0.12.4 → relationalai-0.12.7}/frontend/debugger/dist/index.html +0 -0
  91. {relationalai-0.12.4 → relationalai-0.12.7}/src/__init__.py +0 -0
  92. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/__init__.py +0 -0
  93. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/events/__init__.py +0 -0
  94. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/procedures/__init__.py +0 -0
  95. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/procedures/procedure.py +0 -0
  96. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/rel/__init__.py +0 -0
  97. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/tables/__init__.py +0 -0
  98. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/tasks/__init__.py +0 -0
  99. {relationalai-0.12.4 → relationalai-0.12.7}/src/raitoolkit/tasks/task.py +0 -0
  100. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/analysis/__init__.py +0 -0
  101. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/analysis/mechanistic.py +0 -0
  102. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/analysis/whynot.py +0 -0
  103. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/auth/__init__.py +0 -0
  104. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/auth/jwt_generator.py +0 -0
  105. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/auth/oauth_callback_server.py +0 -0
  106. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/auth/token_handler.py +0 -0
  107. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/auth/util.py +0 -0
  108. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/__init__.py +0 -0
  109. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/azure.py +0 -0
  110. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/cache_store.py +0 -0
  111. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/client.py +0 -0
  112. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/config.py +0 -0
  113. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/direct_access_client.py +0 -0
  114. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/export_procedure.py.jinja +0 -0
  115. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/hash_util.py +0 -0
  116. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/profile_polling.py +0 -0
  117. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/result_helpers.py +0 -0
  118. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/types.py +0 -0
  119. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/use_index_poller.py +0 -0
  120. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/clients/util.py +0 -0
  121. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/compiler.py +0 -0
  122. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/debugging.py +0 -0
  123. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/dependencies.py +0 -0
  124. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/docutils.py +0 -0
  125. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/dsl.py +0 -0
  126. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/__init__.py +0 -0
  127. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/__init__.py +0 -0
  128. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/builder/__init__.py +0 -0
  129. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/snowflake/__init__.py +0 -0
  130. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/std/__init__.py +0 -0
  131. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/std/decimals/__init__.py +0 -0
  132. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/std/integers/__init__.py +0 -0
  133. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/std/math/__init__.py +0 -0
  134. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/builder/std/strings/__init__.py +0 -0
  135. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/devtools/__init__.py +0 -0
  136. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/devtools/benchmark_lqp/__init__.py +0 -0
  137. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/devtools/extract_lqp/__init__.py +0 -0
  138. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/__init__.py +0 -0
  139. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/__init__.py +0 -0
  140. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/orm/__init__.py +0 -0
  141. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/orm/adapter_qb.py +0 -0
  142. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/orm/model.py +0 -0
  143. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/orm/parser.py +0 -0
  144. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/owl/__init__.py +0 -0
  145. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/owl/adapter.py +0 -0
  146. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/owl/model.py +0 -0
  147. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/adapters/owl/parser.py +0 -0
  148. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/bindings/__init__.py +0 -0
  149. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/bindings/common.py +0 -0
  150. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/bindings/csv.py +0 -0
  151. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/bindings/legacy/__init__.py +0 -0
  152. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/bindings/legacy/binding_models.py +0 -0
  153. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/bindings/snowflake.py +0 -0
  154. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/codegen/__init__.py +0 -0
  155. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/codegen/binder.py +0 -0
  156. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/codegen/common.py +0 -0
  157. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/codegen/helpers.py +0 -0
  158. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/codegen/relations.py +0 -0
  159. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/codegen/weaver.py +0 -0
  160. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/constants.py +0 -0
  161. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/__init__.py +0 -0
  162. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/builders/__init__.py +0 -0
  163. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/builders/logic.py +0 -0
  164. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/builders/scalar_constraint.py +0 -0
  165. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/constraints/__init__.py +0 -0
  166. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/constraints/predicate/__init__.py +0 -0
  167. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/constraints/predicate/atomic.py +0 -0
  168. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/constraints/predicate/universal.py +0 -0
  169. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/constraints/scalar.py +0 -0
  170. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/context.py +0 -0
  171. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/cset.py +0 -0
  172. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/exprs/__init__.py +0 -0
  173. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/exprs/relational.py +0 -0
  174. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/exprs/scalar.py +0 -0
  175. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/instances.py +0 -0
  176. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/logic/__init__.py +0 -0
  177. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/logic/aggregation.py +0 -0
  178. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/logic/exists.py +0 -0
  179. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/logic/helper.py +0 -0
  180. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/namespaces.py +0 -0
  181. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/relations.py +0 -0
  182. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/rules.py +0 -0
  183. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/stack.py +0 -0
  184. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/std/__init__.py +0 -0
  185. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/temporal/__init__.py +0 -0
  186. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/temporal/recall.py +0 -0
  187. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/__init__.py +0 -0
  188. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/concepts.py +0 -0
  189. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/constrained/__init__.py +0 -0
  190. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/constrained/nominal.py +0 -0
  191. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/constrained/subtype.py +0 -0
  192. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/standard.py +0 -0
  193. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/unconstrained.py +0 -0
  194. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/types/variables.py +0 -0
  195. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/core/utils.py +0 -0
  196. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ir/__init__.py +0 -0
  197. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ir/compiler.py +0 -0
  198. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ir/executor.py +0 -0
  199. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/__init__.py +0 -0
  200. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/constraints.py +0 -0
  201. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/export.py +0 -0
  202. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/models.py +0 -0
  203. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/python_printer.py +0 -0
  204. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/raw_source.py +0 -0
  205. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/readings.py +0 -0
  206. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/relationships.py +0 -0
  207. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/roles.py +0 -0
  208. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/ontologies/subtyping.py +0 -0
  209. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/__init__.py +0 -0
  210. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/constraints.py +0 -0
  211. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/measures/__init__.py +0 -0
  212. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/measures/dimensions.py +0 -0
  213. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/measures/initializer.py +0 -0
  214. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/measures/measure_rules.py +0 -0
  215. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/measures/measures.py +0 -0
  216. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/measures/role_exprs.py +0 -0
  217. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/models.py +0 -0
  218. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/object_oriented_printer.py +0 -0
  219. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/printer.py +0 -0
  220. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/reasoner_errors.py +0 -0
  221. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/reasoners.py +0 -0
  222. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/relations.py +0 -0
  223. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/relationships.py +0 -0
  224. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/types.py +0 -0
  225. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/utils.py +0 -0
  226. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/orm/verb.py +0 -0
  227. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/physical_metadata/__init__.py +0 -0
  228. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/physical_metadata/tables.py +0 -0
  229. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/relations.py +0 -0
  230. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/rulesets.py +0 -0
  231. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/schemas/__init__.py +0 -0
  232. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/schemas/builder.py +0 -0
  233. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/schemas/comp_names.py +0 -0
  234. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/schemas/components.py +0 -0
  235. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/schemas/contexts.py +0 -0
  236. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/schemas/exprs.py +0 -0
  237. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/schemas/fragments.py +0 -0
  238. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/serialization.py +0 -0
  239. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/serialize/__init__.py +0 -0
  240. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/serialize/binding_model.py +0 -0
  241. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/serialize/exporter.py +0 -0
  242. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/serialize/model.py +0 -0
  243. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/snow/__init__.py +0 -0
  244. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/snow/api.py +0 -0
  245. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/snow/common.py +0 -0
  246. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/state_mgmt/__init__.py +0 -0
  247. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/state_mgmt/state_charts.py +0 -0
  248. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/state_mgmt/transitions.py +0 -0
  249. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/types/__init__.py +0 -0
  250. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/types/concepts.py +0 -0
  251. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/types/entities.py +0 -0
  252. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/types/values.py +0 -0
  253. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/dsl/utils.py +0 -0
  254. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/graphs/__init__.py +0 -0
  255. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/__init__.py +0 -0
  256. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/compiler/__init__.py +0 -0
  257. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/executor/__init__.py +0 -0
  258. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/ir/__init__.py +0 -0
  259. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/passes/__init__.py +0 -0
  260. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/pragmas/__init__.py +0 -0
  261. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/primitives/__init__.py +0 -0
  262. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/types/__init__.py +0 -0
  263. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/utils/__init__.py +0 -0
  264. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/lqp/validators/__init__.py +0 -0
  265. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/__init__.py +0 -0
  266. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/builtins/__init__.py +0 -0
  267. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/compiler/__init__.py +0 -0
  268. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/dependency/__init__.py +0 -0
  269. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/factory/__init__.py +0 -0
  270. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/helpers/__init__.py +0 -0
  271. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/ir/__init__.py +0 -0
  272. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/typer/__init__.py +0 -0
  273. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/typer/typer/__init__.py +0 -0
  274. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/types/__init__.py +0 -0
  275. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/util/__init__.py +0 -0
  276. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/metamodel/visitor/__init__.py +0 -0
  277. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/rel/__init__.py +0 -0
  278. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/rel/executor/__init__.py +0 -0
  279. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/rel/rel_utils/__init__.py +0 -0
  280. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/rel/rewrite/__init__.py +0 -0
  281. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/solvers/__init__.py +0 -0
  282. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/sql/__init__.py +0 -0
  283. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/sql/executor/__init__.py +0 -0
  284. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/sql/rewrite/__init__.py +0 -0
  285. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/tests/__init__.py +0 -0
  286. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/tests/logging/__init__.py +0 -0
  287. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/tests/test_snapshot_base/__init__.py +0 -0
  288. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/early_access/tests/utils/__init__.py +0 -0
  289. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/__init__.py +0 -0
  290. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/base.py +0 -0
  291. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/ci.py +0 -0
  292. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/colab.py +0 -0
  293. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/generic.py +0 -0
  294. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/hex.py +0 -0
  295. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/ipython.py +0 -0
  296. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/jupyter.py +0 -0
  297. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/snowbook.py +0 -0
  298. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/environments/terminal.py +0 -0
  299. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/errors.py +0 -0
  300. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/SF.py +0 -0
  301. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/__init__.py +0 -0
  302. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/graphs.py +0 -0
  303. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/inspect.py +0 -0
  304. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/__init__.py +0 -0
  305. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/api.py +0 -0
  306. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/automaton.py +0 -0
  307. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/bridge.py +0 -0
  308. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/compiler.py +0 -0
  309. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/datalog.py +0 -0
  310. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/diagnostics.py +0 -0
  311. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/filter.py +0 -0
  312. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/glushkov.py +0 -0
  313. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/options.py +0 -0
  314. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/pathfinder-v0.7.0.rel +0 -0
  315. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/rpq.py +0 -0
  316. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/transition.py +0 -0
  317. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/pathfinder/utils.py +0 -0
  318. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/api.py +0 -0
  319. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/benchmarks/__init__.py +0 -0
  320. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/benchmarks/grid_graph.py +0 -0
  321. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/code_organization.md +0 -0
  322. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/Movies.ipynb +0 -0
  323. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/minimal_engine_warmup.py +0 -0
  324. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movie_example.py +0 -0
  325. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/actedin.csv +0 -0
  326. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/directed.csv +0 -0
  327. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/follows.csv +0 -0
  328. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/movies.csv +0 -0
  329. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/person.csv +0 -0
  330. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/produced.csv +0 -0
  331. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/ratings.csv +0 -0
  332. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/examples/movies_data/wrote.csv +0 -0
  333. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/find_paths_via_automaton.py +0 -0
  334. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/graph.py +0 -0
  335. {relationalai-0.12.4/src/relationalai/early_access → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/__init__.py +0 -0
  336. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/find_paths.py +0 -0
  337. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/path_algorithms/one_sided_ball_upto.py +0 -0
  338. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/product_graph.py +0 -0
  339. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/rpq/__init__.py +0 -0
  340. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/rpq/automaton.py +0 -0
  341. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/rpq/diagnostics.py +0 -0
  342. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/rpq/filter.py +0 -0
  343. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/rpq/glushkov.py +0 -0
  344. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/rpq/rpq.py +0 -0
  345. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/rpq/transition.py +0 -0
  346. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/paths/tree_agg.py +0 -0
  347. {relationalai-0.12.4/src/relationalai/early_access → relationalai-0.12.7/src/relationalai/experimental}/paths/utilities/__init__.py +0 -0
  348. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/utilities/iterators.py +0 -0
  349. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/utilities/prefix_sum.py +0 -0
  350. {relationalai-0.12.4/src/relationalai/semantics/reasoners/graph → relationalai-0.12.7/src/relationalai/experimental}/paths/utilities/utilities.py +0 -0
  351. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/experimental/solvers.py +0 -0
  352. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/loaders/__init__.py +0 -0
  353. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/loaders/csv.py +0 -0
  354. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/loaders/loader.py +0 -0
  355. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/loaders/types.py +0 -0
  356. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/metagen.py +0 -0
  357. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/metamodel.py +0 -0
  358. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/rel.py +0 -0
  359. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/rel_emitter.py +0 -0
  360. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/rel_utils.py +0 -0
  361. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/designs/query_builder/identify_by.md +0 -0
  362. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/devtools/__init__.py +0 -0
  363. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/devtools/benchmark_lqp.py +0 -0
  364. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/devtools/compilation_manager.py +0 -0
  365. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/devtools/extract_lqp.py +0 -0
  366. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/internal/__init__.py +0 -0
  367. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/__init__.py +0 -0
  368. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/compiler.py +0 -0
  369. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/ir.py +0 -0
  370. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/pragmas.py +0 -0
  371. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/result_helpers.py +0 -0
  372. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/rewrite/cdc.py +0 -0
  373. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/rewrite/extract_common.py +0 -0
  374. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/rewrite/extract_keys.py +0 -0
  375. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/rewrite/quantify_vars.py +0 -0
  376. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/rewrite/splinter.py +0 -0
  377. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/types.py +0 -0
  378. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/lqp/validators.py +0 -0
  379. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/__init__.py +0 -0
  380. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/compiler.py +0 -0
  381. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/dataflow.py +0 -0
  382. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/dependency.py +0 -0
  383. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/executor.py +0 -0
  384. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/factory.py +0 -0
  385. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/helpers.py +0 -0
  386. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/ir.py +0 -0
  387. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/rewrite/__init__.py +0 -0
  388. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/rewrite/discharge_constraints.py +0 -0
  389. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/rewrite/dnf_union_splitter.py +0 -0
  390. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/rewrite/extract_nested_logicals.py +0 -0
  391. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/rewrite/flatten.py +0 -0
  392. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/typer/__init__.py +0 -0
  393. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/typer/checker.py +0 -0
  394. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/types.py +0 -0
  395. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/util.py +0 -0
  396. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/metamodel/visitor.py +0 -0
  397. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/graph/README.md +0 -0
  398. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/graph/__init__.py +0 -0
  399. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/graph/design/beyond_demand_transform.md +0 -0
  400. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/graph/tests/README.md +0 -0
  401. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/optimization/__init__.py +0 -0
  402. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/optimization/common.py +0 -0
  403. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/optimization/solvers_dev.py +0 -0
  404. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/reasoners/optimization/solvers_pb.py +0 -0
  405. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/rel/__init__.py +0 -0
  406. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/rel/rel.py +0 -0
  407. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/__init__.py +0 -0
  408. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/executor/__init__.py +0 -0
  409. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/executor/duck_db.py +0 -0
  410. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/executor/result_helpers.py +0 -0
  411. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/rewrite/__init__.py +0 -0
  412. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/rewrite/denormalize.py +0 -0
  413. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/rewrite/double_negation.py +0 -0
  414. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/rewrite/recursive_union.py +0 -0
  415. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/rewrite/sort_output_query.py +0 -0
  416. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/sql/sql.py +0 -0
  417. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/__init__.py +0 -0
  418. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/constraints.py +0 -0
  419. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/datetime.py +0 -0
  420. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/decimals.py +0 -0
  421. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/floats.py +0 -0
  422. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/integers.py +0 -0
  423. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/math.py +0 -0
  424. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/pragmas.py +0 -0
  425. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/re.py +0 -0
  426. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/std.py +0 -0
  427. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/std/strings.py +0 -0
  428. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/tests/__init__.py +0 -0
  429. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/tests/logging.py +0 -0
  430. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/tests/test_snapshot_base.py +0 -0
  431. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/semantics/tests/utils.py +0 -0
  432. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/__init__.py +0 -0
  433. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/aggregates.py +0 -0
  434. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/dates.py +0 -0
  435. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/graphs.py +0 -0
  436. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/inspect.py +0 -0
  437. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/math.py +0 -0
  438. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/re.py +0 -0
  439. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/std/strings.py +0 -0
  440. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/__init__.py +0 -0
  441. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/cleanup_snapshots.py +0 -0
  442. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/cli.py +0 -0
  443. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/cli_controls.py +0 -0
  444. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/cli_helpers.py +0 -0
  445. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/constants.py +0 -0
  446. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/debugger.py +0 -0
  447. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/debugger_client.py +0 -0
  448. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/debugger_server.py +0 -0
  449. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/dev.py +0 -0
  450. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/notes +0 -0
  451. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/qb_debugger.py +0 -0
  452. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/query_utils.py +0 -0
  453. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/tools/snapshot_viewer.py +0 -0
  454. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/__init__.py +0 -0
  455. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/clean_up_databases.py +0 -0
  456. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/constants.py +0 -0
  457. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/format.py +0 -0
  458. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/graph.py +0 -0
  459. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/list_databases.py +0 -0
  460. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/otel_configuration.py +0 -0
  461. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/otel_handler.py +0 -0
  462. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/snowflake_handler.py +0 -0
  463. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/span_format_test.py +0 -0
  464. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/span_tracker.py +0 -0
  465. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/spans_file_handler.py +0 -0
  466. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/timeout.py +0 -0
  467. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai/util/tracing_handler.py +0 -0
  468. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai_test_util/__init__.py +0 -0
  469. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai_test_util/fixtures.py +0 -0
  470. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai_test_util/snapshot.py +0 -0
  471. {relationalai-0.12.4 → relationalai-0.12.7}/src/relationalai_test_util/traceback.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: relationalai
3
- Version: 0.12.4
3
+ Version: 0.12.7
4
4
  Summary: RelationalAI Library and CLI
5
5
  Author-email: RelationalAI <support@relational.ai>
6
6
  License-File: LICENSE
@@ -11,7 +11,7 @@ Requires-Dist: colorama
11
11
  Requires-Dist: cryptography
12
12
  Requires-Dist: gravis
13
13
  Requires-Dist: inquirerpy
14
- Requires-Dist: lqp==0.1.16
14
+ Requires-Dist: lqp==0.1.18
15
15
  Requires-Dist: nicegui==2.16.1
16
16
  Requires-Dist: numpy<2
17
17
  Requires-Dist: opentelemetry-api
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = 'relationalai'
3
- version = '0.12.4'
3
+ version = '0.12.7'
4
4
  description = 'RelationalAI Library and CLI'
5
5
  readme="docs/pypi/README.md"
6
6
  authors = [
@@ -8,7 +8,7 @@ authors = [
8
8
  ]
9
9
  requires-python = ">= 3.10"
10
10
  dependencies = [
11
- "lqp==0.1.16",
11
+ "lqp==0.1.18",
12
12
  "snowflake-connector-python[secure-local-storage]",
13
13
  "snowflake-snowpark-python>=1.38.0",
14
14
  "typing-extensions",
@@ -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"]
@@ -122,3 +121,10 @@ reportMissingTypeStubs = false
122
121
  pythonVersion = "3.9"
123
122
  typeCheckingMode = "standard"
124
123
  reportUnusedExpression = false
124
+
125
+ [tool.coverage.paths]
126
+ source = [
127
+ "src/relationalai",
128
+ ".venv/*/lib/python*/site-packages/relationalai",
129
+ ".venv/*/Lib/site-packages/relationalai"
130
+ ]
@@ -1,3 +1,7 @@
1
+ """
2
+ The RelationalAI Python SDK.
3
+ """
4
+
1
5
  from __future__ import annotations
2
6
  import importlib.metadata
3
7
 
@@ -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 _poll_use_index if there are sources to process."""
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
- return self._poll_use_index(
842
- app_name=app_name,
843
- sources=sources_list,
844
- model=model,
845
- engine_name=engine_name,
846
- engine_size=engine_size,
847
- program_span_id=program_span_id,
848
- headers=headers,
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
@@ -2836,6 +2842,15 @@ class SnowflakeTable(dsl.Type):
2836
2842
  else:
2837
2843
  self(snowflake_id=id).set(**{prop_ident: val})
2838
2844
 
2845
+ # Because we're bypassing a bunch of the normal Type.add machinery here,
2846
+ # we need to manually account for the case where people are using value types.
2847
+ def wrapped(x):
2848
+ if not model._config.get("compiler.use_value_types", False):
2849
+ return x
2850
+ other_id = dsl.create_var()
2851
+ model._action(dsl.build.construct(self._type, [x, other_id]))
2852
+ return other_id
2853
+
2839
2854
  # new UInt128 schema mapping rules
2840
2855
  with model.rule(dynamic=True, globalize=True, source=self._source):
2841
2856
  id = dsl.create_var()
@@ -2845,7 +2860,7 @@ class SnowflakeTable(dsl.Type):
2845
2860
  # for avoiding a non-blocking warning
2846
2861
  edb(dsl.Symbol("METADATA$KEY"), id)
2847
2862
  std.rel.UInt128(id)
2848
- self.add(id, snowflake_id=id)
2863
+ self.add(wrapped(id), snowflake_id=id)
2849
2864
 
2850
2865
  for prop, prop_type in self._schema["columns"].items():
2851
2866
  _prop = prop
@@ -2867,7 +2882,7 @@ class SnowflakeTable(dsl.Type):
2867
2882
  model._check_property(_prop._prop)
2868
2883
  raw_relation = getattr(std.rel, prop_ident)
2869
2884
  dsl.tag(raw_relation, dsl.Builtins.FunctionAnnotation)
2870
- raw_relation.add(id, val)
2885
+ raw_relation.add(wrapped(id), val)
2871
2886
 
2872
2887
  def namespace(self):
2873
2888
  return f"{self._parent._parent._name}.{self._parent._name}"
@@ -3450,19 +3465,25 @@ class DirectAccessResources(Resources):
3450
3465
  program_span_id: str | None = None,
3451
3466
  headers: Dict | None = None,
3452
3467
  ):
3453
- """Only call _poll_use_index if there are sources to process."""
3468
+ """Only call poll() if there are sources to process and cache is not valid."""
3454
3469
  sources_list = list(sources)
3455
3470
  self.database = model
3456
3471
  if sources_list:
3457
- return self._poll_use_index(
3472
+ poller = DirectUseIndexPoller(
3473
+ self,
3458
3474
  app_name=app_name,
3459
3475
  sources=sources_list,
3460
3476
  model=model,
3461
3477
  engine_name=engine_name,
3462
3478
  engine_size=engine_size,
3479
+ language=self.language,
3463
3480
  program_span_id=program_span_id,
3464
3481
  headers=headers,
3482
+ generation=self.generation,
3465
3483
  )
3484
+ # If cache is valid (data freshness has not expired), skip polling
3485
+ if not poller.cache.is_valid():
3486
+ return poller.poll()
3466
3487
 
3467
3488
  def _check_exec_async_status(self, txn_id: str, headers: Dict[str, str] | None = None) -> bool:
3468
3489
  """Check whether the given transaction has completed."""
@@ -2,12 +2,12 @@ import warnings
2
2
 
3
3
  from relationalai.semantics.lqp.constructors import (
4
4
  mk_abstraction, mk_and, mk_exists, mk_or, mk_pragma, mk_primitive,
5
- mk_specialized_value, mk_type, mk_value, mk_var
5
+ mk_specialized_value, mk_type, mk_value
6
6
  )
7
7
 
8
8
  __all__ = [
9
9
  "mk_abstraction", "mk_and", "mk_exists", "mk_or", "mk_pragma", "mk_primitive", "mk_specialized_value", "mk_type",
10
- "mk_value", "mk_var"
10
+ "mk_value"
11
11
  ]
12
12
 
13
13
  warnings.warn(
@@ -1,7 +1,7 @@
1
1
  from relationalai.semantics.metamodel.rewrite import Flatten, \
2
2
  DNFUnionSplitter, ExtractNestedLogicals, flatten
3
3
  from relationalai.semantics.lqp.rewrite import Splinter, \
4
- ExtractKeys, FDConstraints
4
+ ExtractKeys, FunctionAnnotations
5
5
 
6
6
  __all__ = ["Splinter", "Flatten", "DNFUnionSplitter", "ExtractKeys",
7
- "ExtractNestedLogicals", "FDConstraints", "flatten"]
7
+ "ExtractNestedLogicals", "FunctionAnnotations", "flatten"]
@@ -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.semantics.reasoners.graph.paths.graph import Graph
16
- from relationalai.semantics.reasoners.graph.paths.api import node, edge, path, star, match
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.api import path, star, match
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.semantics.reasoners.graph.paths.graph import Graph
8
- from relationalai.semantics.reasoners.graph.paths.api import node, path, match
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.semantics.reasoners.graph.paths.graph import Graph
8
- from relationalai.semantics.reasoners.graph.paths.api import node, path, match
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,4 +1,4 @@
1
- from relationalai.semantics.reasoners.graph.paths.api import path, union
1
+ from relationalai.experimental.paths.api import path, union
2
2
  from relationalai.semantics import Concept
3
3
 
4
4
  Node = Concept('Node')
@@ -1,6 +1,6 @@
1
1
  # For builder components.
2
2
  from relationalai.semantics import Integer, define
3
- from relationalai.semantics.reasoners.graph.paths.graph import Graph
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.semantics.reasoners.graph.paths.graph import Graph
4
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
5
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_upto import ball_upto
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.semantics.reasoners.graph.paths.graph import Graph
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.semantics.reasoners.graph.paths.graph import Graph
4
- from relationalai.semantics.reasoners.graph.paths.utilities.iterators import setup_iteration
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.semantics.reasoners.graph.paths.graph import Graph
4
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_upto import ball_upto
5
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
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.semantics.reasoners.graph.paths.graph import Graph
4
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_upto import ball_upto
5
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
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.semantics.reasoners.graph.paths.graph import Graph
4
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_upto import ball_upto
5
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.find_paths import find_shortest_paths
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.find_paths import find_shortest_paths
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.find_paths import find_shortest_paths
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.find_paths import find_walks
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.find_paths import find_walks
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_repetition import ball_with_repetition
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_upto import ball_upto
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.one_sided_ball_upto import ball_upto
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.single import single_shortest_path
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.single import single_walk
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.single import single_walk
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.two_sided_balls_repetition import two_balls_repetition
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.two_sided_balls_repetition import two_balls_repetition
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.two_sided_balls_upto import two_balls_upto
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.two_sided_balls_upto import two_balls_upto
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.usp import compute_usp, compute_nsp
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.semantics.reasoners.graph.paths.graph import Graph
3
- from relationalai.semantics.reasoners.graph.paths.path_algorithms.usp import compute_usp, compute_nsp
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,3 +1,7 @@
1
+ """
2
+ The RelationalAI Semantics Module.
3
+ """
4
+
1
5
  # Mark this package's docstrings for inclusion
2
6
  # in automatically generated web documentation.
3
7
  __include_in_docs__ = True
@@ -6,3 +6,4 @@ concept_population = Relationship.builtins["concept_population"]
6
6
  function = Relationship.builtins["function"]
7
7
  from_cdc = Relationship.builtins["from_cdc"]
8
8
  track = Relationship.builtins["track"]
9
+ recursion_config = Relationship.builtins["recursion_config"]
@@ -2550,8 +2550,6 @@ class Fragment():
2550
2550
  from .snowflake import Table
2551
2551
  assert isinstance(table, Table), "Only Snowflake tables are supported for now"
2552
2552
 
2553
- result_cols = table._col_names
2554
-
2555
2553
  clone = Fragment(parent=self)
2556
2554
  clone._is_export = True
2557
2555
  qb_model = clone._model or Model("anon")
@@ -2559,8 +2557,7 @@ class Fragment():
2559
2557
  clone._source = runtime_env.get_source_pos()
2560
2558
  with debugging.span("query", dsl=str(clone), **with_source(clone), meta=clone._meta):
2561
2559
  query_task = qb_model._compiler.fragment(clone)
2562
- qb_model._to_executor().execute(ir_model, query_task, result_cols=result_cols, export_to=table._fqn, update=update, meta=clone._meta)
2563
-
2560
+ qb_model._to_executor().execute(ir_model, query_task, export_to=table, update=update, meta=clone._meta)
2564
2561
 
2565
2562
  #--------------------------------------------------
2566
2563
  # Select / Where
@@ -3419,6 +3416,8 @@ class Compiler():
3419
3416
  return out
3420
3417
 
3421
3418
  elif isinstance(item, TypeRef):
3419
+ if isinstance(item._thing, Relationship):
3420
+ return self.to_relation(item._thing)
3422
3421
  concept = to_type(item)
3423
3422
  if not concept:
3424
3423
  raise ValueError(f"Cannot find concept for {item}, {type(item)}")
@@ -12,7 +12,18 @@ from . import internal as b, annotations as anns
12
12
  from relationalai import debugging
13
13
  from relationalai.errors import UnsupportedColumnTypesWarning
14
14
  from snowflake.snowpark.context import get_active_session
15
+ from typing import ClassVar, Optional
15
16
 
17
+ #--------------------------------------------------
18
+ # Iceberg Configuration
19
+ #--------------------------------------------------
20
+ @dataclass
21
+ class IcebergConfig:
22
+ """Configuration for exporting to Iceberg tables."""
23
+ external_volume: str | None = None
24
+ default: ClassVar[Optional["IcebergConfig"]]
25
+
26
+ IcebergConfig.default = IcebergConfig()
16
27
  #--------------------------------------------------
17
28
  # Helpers
18
29
  #--------------------------------------------------
@@ -191,7 +202,7 @@ class Table():
191
202
  _schemas:dict[tuple[str, str], SchemaInfo] = {}
192
203
  _used_sources:OrderedSet[Table] = ordered_set()
193
204
 
194
- def __init__(self, fqn:str, cols:list[str]|None=None, schema:dict[str, str|b.Concept]|None=None) -> None:
205
+ def __init__(self, fqn:str, cols:list[str]|None=None, schema:dict[str, str|b.Concept]|None=None, config: IcebergConfig|None=None) -> None:
195
206
  self._fqn = fqn
196
207
  parser = IdentityParser(fqn, require_all_parts=True)
197
208
  self._database, self._schema, self._table, self._fqn = parser.to_list()
@@ -201,6 +212,8 @@ class Table():
201
212
  self._ref = self._concept.ref("row_id")
202
213
  self._cols = {}
203
214
  self._col_names = cols
215
+ self._iceberg_config = config
216
+ self._is_iceberg = config is not None
204
217
  info = self._schemas.get((self._database, self._schema))
205
218
  if not info:
206
219
  info = self._schemas[(self._database, self._schema)] = SchemaInfo(self._database, self._schema)
@@ -12,4 +12,5 @@ annotations_to_emit = FrozenOrderedSet([
12
12
  adhoc.name,
13
13
  builtins.function.name,
14
14
  builtins.track.name,
15
+ builtins.recursion_config.name,
15
16
  ])
@@ -1,6 +1,5 @@
1
1
  from typing import Tuple
2
2
  from relationalai.semantics.lqp import ir as lqp
3
- from relationalai.semantics.metamodel.ir import sanitize
4
3
 
5
4
  def mk_and(args: list[lqp.Formula]) -> lqp.Formula:
6
5
  # Flatten nested conjunctions
@@ -49,10 +48,6 @@ def mk_specialized_value(value) -> lqp.SpecializedValue:
49
48
  def mk_value(value) -> lqp.Value:
50
49
  return lqp.Value(value=value, meta=None)
51
50
 
52
- def mk_var(name: str) -> lqp.Var:
53
- _name = '_' if name == '_' else sanitize(name)
54
- return lqp.Var(name=_name, meta=None)
55
-
56
51
  def mk_type(typename: lqp.TypeName, parameters: list[lqp.Value]=[]) -> lqp.Type:
57
52
  return lqp.Type(type_name=typename, parameters=parameters, meta=None)
58
53