pytensor 2.26.2__tar.gz → 2.26.3__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.
- {pytensor-2.26.2/pytensor.egg-info → pytensor-2.26.3}/PKG-INFO +1 -1
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/_version.py +3 -3
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/basic.py +6 -2
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/cmodule.py +8 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/scalar.py +6 -2
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/math.py +32 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/math.py +12 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/math.py +16 -0
- {pytensor-2.26.2 → pytensor-2.26.3/pytensor.egg-info}/PKG-INFO +1 -1
- {pytensor-2.26.2 → pytensor-2.26.3}/LICENSE.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/MANIFEST.in +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/README.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/.templates/PLACEHOLDER +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/.templates/layout.html +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/LICENSE.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/README.md +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/acknowledgement.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/bcast.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/bcast.svg +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/conf.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/core_development_guide.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/css.inc +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/dev_start_guide.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/environment.yml +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/apply.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/apply.svg +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/apply2.svg +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/creating_a_c_op.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/creating_a_numba_jax_op.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/creating_an_op.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/ctype.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/extending_faq.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/extending_pytensor_solution_1.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/graph_rewriting.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/graphstructures.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/inplace.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/op.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/other_ops.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/pics/symbolic_graph_opt.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/pics/symbolic_graph_unopt.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/pipeline.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/scan.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/tips.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/type.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/unittest.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/extending/using_params.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/faq.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/generate_dtype_tensor_table.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/glossary.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/images/Elman_srnn.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/images/PyTensor_RGB.svg +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/images/blocksparse.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/images/lstm.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/images/lstm_memorycell.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/images/talk2010.gif +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/images/talk2010.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/install.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/internal/how_to_release.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/internal/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/internal/metadocumentation.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/introduction.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/debugmode.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/function.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/io.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/mode.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/nanguardmode.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/opfromgraph.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/ops.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/profilemode.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/compile/shared.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/config.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/css/d3-context-menu.css +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/css/d3viz.css +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/js/d3-context-menu.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/js/d3.v3.min.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/js/d3viz.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/js/dagre-d3.min.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/js/graphlib-dot.min.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/mlp.html +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/mlp.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/mlp2.html +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/mlp2.pdf +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/mlp2.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/ofg.html +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/ofg2.html +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/index.ipynb +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/index_files/index_10_0.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/index_files/index_11_0.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/index_files/index_24_0.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/index_files/index_25_0.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/gradient.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/features.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/fgraph.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/graph.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/op.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/replace.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/type.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/graph/utils.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/misc/pkl_utils.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/printing.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/sandbox/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/sandbox/linalg.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/scalar/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/scan.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/sparse/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/sparse/sandbox.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/basic.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/basic_opt.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/bcast.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/bcast.svg +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/conv.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/elemwise.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/extra_ops.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/fft.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/functional.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/io.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/math_opt.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/nlinalg.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/plot_fft.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/random/distributions.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/random/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/slinalg.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/tensor/utils.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/library/typed_list.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/links.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/optimizations.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/pylintrc +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/troubleshooting.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/adding.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/adding_solution_1.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/aliasing.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/apply.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/apply.svg +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/bcast.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/broadcasting.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/conditions.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/debug_faq.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/dlogistic.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/examples.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/faq_tutorial.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/gradients.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/index.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/loading_and_saving.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/logistic.gp +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/logistic.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/loop.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/loop_solution_1.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/modes.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/modes_solution_1.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/multi_cores.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/nan_tutorial.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/pics/d3viz.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/pics/logreg_pydotprint_predict.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/pics/logreg_pydotprint_prediction.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/pics/logreg_pydotprint_train.png +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/printing_drawing.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/prng.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/profiling.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/profiling_example.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/profiling_example_out.prof +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/shape_info.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/sparse.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/tutorial/symbolic_graphs.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/doc/user_guide.rst +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pyproject.toml +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/bin/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/bin/pytensor_cache.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/breakpoint.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/builders.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/compiledir.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/compilelock.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/debugmode.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/function/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/function/pfunc.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/function/types.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/io.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/mode.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/monitormode.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/nanguardmode.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/ops.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/profiling.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/compile/sharedvalue.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/configdefaults.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/configparser.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/css/d3-context-menu.css +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/css/d3viz.css +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/d3viz.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/formatting.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/js/d3-context-menu.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/js/d3.v3.min.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/js/d3viz.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/js/dagre-d3.min.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/d3viz/js/graphlib-dot.min.js +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/gradient.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/destroyhandler.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/features.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/fg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/null_type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/op.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/replace.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/rewriting/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/rewriting/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/rewriting/db.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/rewriting/kanren.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/rewriting/unify.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/rewriting/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/graph/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/ifelse.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/c_code/lazylinker_c.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/c_code/pytensor_mod_helper.h +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/cutils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/cvm.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/exceptions.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/interface.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/lazylinker_c.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/op.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/params_type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/c/type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/blas.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/blockwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/einsum.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/elemwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/extra_ops.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/math.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/nlinalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/pad.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/random.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/scan.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/shape.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/slinalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/sort.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/sparse.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/subtensor.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/dispatch/tensor_basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/jax/linker.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/cython_support.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/elemwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/extra_ops.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/nlinalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/random.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/scalar.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/scan.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/slinalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/sparse.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/subtensor.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/tensor_basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/dispatch/vectorize_codegen.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/numba/linker.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/blas.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/blockwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/elemwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/extra_ops.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/math.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/nlinalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/scalar.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/shape.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/sort.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/dispatch/subtensor.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/pytorch/linker.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/link/vm.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/check_blas.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/check_blas_many.sh +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/check_duplicate_key.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/elemwise_openmp_speedup.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/elemwise_time_test.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/frozendict.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/may_share_memory.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/ordered_set.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/misc/pkl_utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/printing.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/py.typed +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/raise_op.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/c_code/Faddeeva.cc +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/c_code/Faddeeva.hh +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/c_code/gamma.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/c_code/incbet.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/loop.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scalar/sharedvar.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/checkpoints.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/op.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/rewriting.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/scan_perform.pyx +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/scan_perform_ext.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/scan/views.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/rewriting.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/sandbox/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/sandbox/sp.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/sandbox/sp2.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/sharedvar.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/sparse/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/blas.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/blas_c.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/blas_headers.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/blas_scipy.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/blockwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/c_code/alt_blas_common.h +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/c_code/alt_blas_template.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/c_code/dimshuffle.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/conv/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/conv/abstract_conv.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/einsum.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/elemwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/elemwise_cgen.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/exceptions.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/extra_ops.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/fft.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/fourier.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/functional.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/inplace.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/io.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/linalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/nlinalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/pad.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/op.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/rewriting/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/rewriting/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/rewriting/jax.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/rewriting/numba.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/random/var.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/blas.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/blas_c.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/blas_scipy.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/blockwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/einsum.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/elemwise.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/extra_ops.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/jax.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/linalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/ofg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/shape.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/special.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/subtensor.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/rewriting/uncanonicalize.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/shape.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/sharedvar.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/slinalg.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/sort.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/special.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/subtensor.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/type_other.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/var.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/variable.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/tensor/xlogx.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/typed_list/__init__.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/typed_list/basic.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/typed_list/rewriting.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/typed_list/type.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/updates.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor/utils.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor.egg-info/SOURCES.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor.egg-info/dependency_links.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor.egg-info/entry_points.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor.egg-info/requires.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/pytensor.egg-info/top_level.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/scripts/mypy-failing.txt +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/setup.cfg +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/setup.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/link/c/c_code/test_cenum.h +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/link/c/c_code/test_quadratic_function.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/tensor/conv/c_code/corr3d_gemm.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/tensor/conv/c_code/corr_gemm.c +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_breakpoint.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_config.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_gradient.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_ifelse.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_printing.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_raise_op.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_rop.py +0 -0
- {pytensor-2.26.2 → pytensor-2.26.3}/tests/test_updates.py +0 -0
|
@@ -8,11 +8,11 @@ import json
|
|
|
8
8
|
|
|
9
9
|
version_json = '''
|
|
10
10
|
{
|
|
11
|
-
"date": "2024-11-
|
|
11
|
+
"date": "2024-11-13T15:48:28+0100",
|
|
12
12
|
"dirty": false,
|
|
13
13
|
"error": null,
|
|
14
|
-
"full-revisionid": "
|
|
15
|
-
"version": "2.26.
|
|
14
|
+
"full-revisionid": "33a4d4882cc14c1a4a24ec24a5ebb7a1065bcbae",
|
|
15
|
+
"version": "2.26.3"
|
|
16
16
|
}
|
|
17
17
|
''' # END VERSION_JSON
|
|
18
18
|
|
|
@@ -616,16 +616,20 @@ class Variable(Node, Generic[_TypeType, OptionalApplyType]):
|
|
|
616
616
|
"""
|
|
617
617
|
from pytensor.compile.function import function
|
|
618
618
|
|
|
619
|
+
ignore_unused_input = kwargs.get("on_unused_input", None) in ("ignore", "warn")
|
|
620
|
+
|
|
619
621
|
def convert_string_keys_to_variables(inputs_to_values) -> dict["Variable", Any]:
|
|
620
622
|
new_input_to_values = {}
|
|
621
623
|
for key, value in inputs_to_values.items():
|
|
622
624
|
if isinstance(key, str):
|
|
623
625
|
matching_vars = get_var_by_name([self], key)
|
|
624
626
|
if not matching_vars:
|
|
625
|
-
|
|
627
|
+
if not ignore_unused_input:
|
|
628
|
+
raise ValueError(f"{key} not found in graph")
|
|
626
629
|
elif len(matching_vars) > 1:
|
|
627
630
|
raise ValueError(f"Found multiple variables with name {key}")
|
|
628
|
-
|
|
631
|
+
else:
|
|
632
|
+
new_input_to_values[matching_vars[0]] = value
|
|
629
633
|
else:
|
|
630
634
|
new_input_to_values[key] = value
|
|
631
635
|
return new_input_to_values
|
|
@@ -2379,6 +2379,14 @@ class GCC_compiler(Compiler):
|
|
|
2379
2379
|
if sys.platform == "darwin":
|
|
2380
2380
|
# Use the already-loaded python symbols.
|
|
2381
2381
|
cxxflags.extend(["-undefined", "dynamic_lookup"])
|
|
2382
|
+
# XCode15 introduced ld_prime linker. At the time of writing, this linker
|
|
2383
|
+
# leads to multiple issues, so we supply a flag to use the older dynamic
|
|
2384
|
+
# linker: ld64
|
|
2385
|
+
if int(platform.mac_ver()[0].split(".")[0]) >= 15:
|
|
2386
|
+
# This might be incorrect. We know that ld_prime was introduced in
|
|
2387
|
+
# XCode15, but we don't know if the platform version is aligned with
|
|
2388
|
+
# xcode's version.
|
|
2389
|
+
cxxflags.append("-ld64")
|
|
2382
2390
|
|
|
2383
2391
|
if sys.platform == "win32":
|
|
2384
2392
|
# Workaround for https://github.com/Theano/Theano/issues/4926.
|
|
@@ -31,6 +31,7 @@ from pytensor.scalar.math import (
|
|
|
31
31
|
GammaIncInv,
|
|
32
32
|
Iv,
|
|
33
33
|
Ive,
|
|
34
|
+
Kve,
|
|
34
35
|
Log1mexp,
|
|
35
36
|
Psi,
|
|
36
37
|
TriGamma,
|
|
@@ -288,9 +289,12 @@ def jax_funcify_Iv(op, **kwargs):
|
|
|
288
289
|
|
|
289
290
|
@jax_funcify.register(Ive)
|
|
290
291
|
def jax_funcify_Ive(op, **kwargs):
|
|
291
|
-
|
|
292
|
+
return try_import_tfp_jax_op(op, jax_op_name="bessel_ive")
|
|
293
|
+
|
|
292
294
|
|
|
293
|
-
|
|
295
|
+
@jax_funcify.register(Kve)
|
|
296
|
+
def jax_funcify_Kve(op, **kwargs):
|
|
297
|
+
return try_import_tfp_jax_op(op, jax_op_name="bessel_kve")
|
|
294
298
|
|
|
295
299
|
|
|
296
300
|
@jax_funcify.register(Log1mexp)
|
|
@@ -1281,6 +1281,38 @@ class Ive(BinaryScalarOp):
|
|
|
1281
1281
|
ive = Ive(upgrade_to_float, name="ive")
|
|
1282
1282
|
|
|
1283
1283
|
|
|
1284
|
+
class Kve(BinaryScalarOp):
|
|
1285
|
+
"""Exponentially scaled modified Bessel function of the second kind of real order v."""
|
|
1286
|
+
|
|
1287
|
+
nfunc_spec = ("scipy.special.kve", 2, 1)
|
|
1288
|
+
|
|
1289
|
+
@staticmethod
|
|
1290
|
+
def st_impl(v, x):
|
|
1291
|
+
return scipy.special.kve(v, x)
|
|
1292
|
+
|
|
1293
|
+
def impl(self, v, x):
|
|
1294
|
+
return self.st_impl(v, x)
|
|
1295
|
+
|
|
1296
|
+
def L_op(self, inputs, outputs, output_grads):
|
|
1297
|
+
v, x = inputs
|
|
1298
|
+
[kve_vx] = outputs
|
|
1299
|
+
[g_out] = output_grads
|
|
1300
|
+
# (1 -v/x) * kve(v, x) - kve(v - 1, x)
|
|
1301
|
+
kve_vm1x = self(v - 1, x)
|
|
1302
|
+
dx = (1 - v / x) * kve_vx - kve_vm1x
|
|
1303
|
+
|
|
1304
|
+
return [
|
|
1305
|
+
grad_not_implemented(self, 0, v),
|
|
1306
|
+
g_out * dx,
|
|
1307
|
+
]
|
|
1308
|
+
|
|
1309
|
+
def c_code(self, *args, **kwargs):
|
|
1310
|
+
raise NotImplementedError()
|
|
1311
|
+
|
|
1312
|
+
|
|
1313
|
+
kve = Kve(upgrade_to_float, name="kve")
|
|
1314
|
+
|
|
1315
|
+
|
|
1284
1316
|
class Sigmoid(UnaryScalarOp):
|
|
1285
1317
|
"""
|
|
1286
1318
|
Logistic sigmoid function (1 / (1 + exp(-x)), also known as expit or inverse logit
|
|
@@ -1229,6 +1229,16 @@ def ive(v, x):
|
|
|
1229
1229
|
"""Exponentially scaled modified Bessel function of the first kind of order v (real)."""
|
|
1230
1230
|
|
|
1231
1231
|
|
|
1232
|
+
@scalar_elemwise
|
|
1233
|
+
def kve(v, x):
|
|
1234
|
+
"""Exponentially scaled modified Bessel function of the second kind of real order v."""
|
|
1235
|
+
|
|
1236
|
+
|
|
1237
|
+
def kv(v, x):
|
|
1238
|
+
"""Modified Bessel function of the second kind of real order v."""
|
|
1239
|
+
return kve(v, x) * exp(-x)
|
|
1240
|
+
|
|
1241
|
+
|
|
1232
1242
|
@scalar_elemwise
|
|
1233
1243
|
def sigmoid(x):
|
|
1234
1244
|
"""Logistic sigmoid function (1 / (1 + exp(-x)), also known as expit or inverse logit"""
|
|
@@ -3040,6 +3050,8 @@ __all__ = [
|
|
|
3040
3050
|
"i1",
|
|
3041
3051
|
"iv",
|
|
3042
3052
|
"ive",
|
|
3053
|
+
"kv",
|
|
3054
|
+
"kve",
|
|
3043
3055
|
"sigmoid",
|
|
3044
3056
|
"expit",
|
|
3045
3057
|
"softplus",
|
|
@@ -56,6 +56,7 @@ from pytensor.tensor.math import (
|
|
|
56
56
|
ge,
|
|
57
57
|
int_div,
|
|
58
58
|
isinf,
|
|
59
|
+
kve,
|
|
59
60
|
le,
|
|
60
61
|
log,
|
|
61
62
|
log1mexp,
|
|
@@ -3494,3 +3495,18 @@ local_polygamma_to_tri_gamma = PatternNodeRewriter(
|
|
|
3494
3495
|
)
|
|
3495
3496
|
|
|
3496
3497
|
register_specialize(local_polygamma_to_tri_gamma)
|
|
3498
|
+
|
|
3499
|
+
|
|
3500
|
+
local_log_kv = PatternNodeRewriter(
|
|
3501
|
+
# Rewrite log(kv(v, x)) = log(kve(v, x) * exp(-x)) -> log(kve(v, x)) - x
|
|
3502
|
+
# During stabilize -x is converted to -1.0 * x
|
|
3503
|
+
(log, (mul, (kve, "v", "x"), (exp, (mul, -1.0, "x")))),
|
|
3504
|
+
(sub, (log, (kve, "v", "x")), "x"),
|
|
3505
|
+
allow_multiple_clients=True,
|
|
3506
|
+
name="local_log_kv",
|
|
3507
|
+
# Start the rewrite from the less likely kve node
|
|
3508
|
+
tracks=[kve],
|
|
3509
|
+
get_nodes=get_clients_at_depth2,
|
|
3510
|
+
)
|
|
3511
|
+
|
|
3512
|
+
register_stabilize(local_log_kv)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pytensor-2.26.2 → pytensor-2.26.3}/doc/library/d3viz/examples/d3viz/css/d3-context-menu.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|