30 open-source projects similar to sympy/sympy, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
PyMC is a Bayesian probabilistic programming framework used for building probabilistic models and performing Bayesian inference. It provides a probabilistic graphical model library for specifying random variables, priors, and likelihood functions, supported by an MCMC sampling engine and variational inference tools to estimate posterior distributions. The framework features a GPU-accelerated inference backend that compiles models into machine code to increase execution speed. It utilizes a backend-agnostic tensor execution model and just-in-time graph compilation to optimize the computation o
Math.js is a comprehensive JavaScript library for scientific, complex, and arbitrary precision calculations. It functions as a symbolic computation engine, a linear algebra toolkit, a statistical analysis library, and a unit conversion system. The project distinguishes itself by providing a symbolic engine capable of parsing, simplifying, and manipulating mathematical expressions algebraically without requiring immediate numerical evaluation. It includes a framework for defining and converting physical quantities with units of measure and automatic prefix support. The library covers a broad
Statsmodels is a comprehensive Python library designed for statistical modeling, econometric research, and data analysis. It provides a robust framework for estimating and diagnosing a wide range of statistical models, enabling users to perform rigorous hypothesis testing, regression analysis, and complex data exploration within structured environments. The library distinguishes itself through its support for advanced statistical methodologies, including state space representation for dynamic systems and generalized linear frameworks that accommodate non-normal response variables. It offers s
This project is a comprehensive Lisp AI implementation library that provides reference implementations for various artificial intelligence paradigms and symbolic algorithms. It functions as a multi-purpose toolkit containing a logic programming engine, a natural language processing suite, and a symbolic mathematics toolkit. The library is distinguished by its diverse architectural frameworks, including a Prolog-style execution engine that uses unification and goal-driven backtracking, and a system for simulating human decision-making through expert system shells and certainty factors. It also
SciPy is a scientific computing library for Python that provides a comprehensive collection of mathematical algorithms and numerical tools for research and engineering. It functions as a high-performance numerical analysis framework, bridging high-level Python code with compiled C and Fortran routines to execute complex computations at hardware speeds. The library is built upon array-based data structures that utilize strided memory layouts to enable efficient data manipulation and slicing. By employing vectorized operation dispatch and linking to optimized hardware-specific linear algebra li
NumPy is a foundational library for scientific computing in Python, providing a comprehensive framework for managing and manipulating large-scale numerical information. It centers on high-performance multidimensional array objects that serve as the primary data structure for complex mathematical operations and data analysis workflows. The library distinguishes itself through specialized mechanisms for handling multidimensional data, including advanced indexing, slicing, and broadcasting techniques that allow for efficient operations across arrays of varying shapes. It utilizes strided metadat
Hedgehog Lab is a browser-based scientific computing environment designed for executing numerical analysis, matrix operations, and symbolic computation directly within a web browser. It functions as a native engine for algebraic manipulation and equation solving, allowing users to perform complex mathematical tasks without requiring external server-side infrastructure or software installations. The platform distinguishes itself by leveraging hardware acceleration to process large-scale linear algebra and matrix calculations. It integrates a symbolic engine that parses mathematical expressions
ModelingToolkit.jl is a symbolic modeling framework and computer algebra system designed for the definition and simulation of complex mathematical systems. It provides a foundational environment for constructing multi-domain physical models and differential equation systems, enabling users to represent scientific problems through symbolic graphs that facilitate automated analysis and transformation. The framework distinguishes itself through its acausal component composition, which allows for the assembly of large-scale models by connecting modular elements rather than defining explicit data
Lasagne is a modular neural network framework and symbolic computation engine used for building and training deep learning architectures. Built as a library on top of Theano, it utilizes symbolic expression graphs and lazy evaluation to automate gradient calculations for parameter optimization. The framework emphasizes modularity by allowing the construction of complex neural networks through the composition of independent and reusable layers. It is designed as a hardware-accelerated machine learning library that offloads intensive linear algebra operations to graphics processors to increase
This project is an agentic development framework and autonomous software engineering system. It utilizes a coordinated network of specialized LLM agents to automate the full software development lifecycle, from codebase exploration and architectural planning to implementation and automated refactoring. The system is distinguished by an agentic memory system and a test-driven development orchestrator. It maintains project continuity across sessions by capturing architectural learnings and state in a persistent semantic database and enforces code quality through an automated cycle of generating
Wave is a full-stack web application framework and low-code UI library designed for building real-time data dashboards and interactive interfaces using Python and R. It allows developers to define browser-based user interfaces and manage server-side state without writing HTML or CSS. The project functions as a collaborative state synchronizer, relaying and persisting application state across multiple concurrent users to enable shared real-time experiences. It distinguishes itself by broadcasting live updates and data visualizations to connected browsers through a unified programming model. T
This project is a browser-based interactive computing environment and data science IDE. It serves as a literate programming tool that allows users to create documents combining live code, mathematical equations, visualizations, and narrative text. As a polyglot notebook interface, it connects to various language kernels to execute code and render output within a single interface. The application distinguishes itself by separating the frontend interface from a remote compute engine through a language-agnostic kernel interface. This allows it to support multiple programming languages while main
Manim is a scriptable, code-driven framework designed for generating precise technical visualizations and mathematical animations. By using a high-level programming interface, it allows users to define geometric shapes, motion paths, and animation logic that are compiled into high-quality video assets. The system functions as a specialized engine for creating reproducible, data-driven representations of complex mathematical concepts and geometric transformations. The framework distinguishes itself through an interpolation-based engine that calculates intermediate states between keyframes to e
A Python native dynamical system simulation framework in the block diagram paradigm.
mypy is a static type checker for Python that analyzes source code to detect type errors and inconsistencies without executing the program. It functions as a static analysis tool and type inference engine, providing a gradual typing system that allows type hints to be added to a codebase incrementally while maintaining compatibility with dynamic typing. The project distinguishes itself through a combination of performance and precision features. It utilizes a daemon-based incremental checking system and multi-process parallel analysis to manage large codebases, supported by binary cache persi
Pandas is a high-performance data analysis library that provides a comprehensive framework for manipulating, cleaning, and transforming structured datasets. It centers on labeled one-dimensional and two-dimensional data structures, allowing users to construct, filter, and reshape tabular information while performing complex arithmetic and logical operations. The library distinguishes itself through a sophisticated indexing engine that enables automatic data alignment during calculations and relational merges. By utilizing a block-based memory layout, it optimizes cache locality for vectorized
Cookiecutter is a command-line project templating engine and scaffolding tool used to automate the creation of software project structures. It functions as a project automator that generates initialized repositories and directories from predefined templates using variable substitution. The system utilizes the Jinja2 templating language to render files and folders, transforming generic blueprints into customized codebases based on user input. It supports template distribution via Git repositories or zip archives, allowing for the standardization of development environments across teams. The t
Colour Science for Python
FastAPI is a web framework for building APIs with Python. It leverages standard language type hints to provide automatic data validation, request parsing, and interactive API documentation generation. The framework supports asynchronous request handling and manages execution contexts to prevent blocking the main event loop. The project includes a dependency injection system that allows for the resolution and injection of reusable components into request handlers. This system supports request-scoped caching, lifecycle management, and integration with security mechanisms like OAuth2 and JSON We
ObsPy: A Python Toolbox for seismology/seismological observatories.
NetworkX is a Python library designed for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks. It provides a comprehensive framework for modeling relationships between entities as graphs, directed graphs, or multigraphs, allowing users to attach arbitrary metadata and properties to nodes and edges. The library distinguishes itself through a modular architecture that decouples graph analysis logic from data storage, utilizing nested dictionaries and adjacency lists to manage topology. It features a pluggable backend system that delegates computat
Parsers and algorithms for computational chemistry logfiles
Biopython is a bioinformatics library for Python providing tools to parse, manipulate, and analyze biological sequences, molecular structures, and phylogenetic trees. It serves as a biological sequence parser for genomic and proteomic data across multiple industry-standard file formats and acts as an interface for querying biological data and citations from NCBI Entrez repositories. The project distinguishes itself through specialized toolkits for protein structure analysis and phylogenetic tree construction. It includes a protein structure analyzer for processing PDB and mmCIF files to calcu
Mesa is a Python framework for agent-based modeling and complex systems simulation. It provides a toolkit for creating simulations where autonomous agents interact within a shared environment to observe emergent global behaviors. The project includes a browser-based interface for real-time visualization of simulation states and agent interactions. It also functions as a data analysis library for recording and processing metrics from model runs to quantify system behavior. The framework supports multiple environmental topologies, including grid-based spatial mapping and network-graph topologi
Numba is a just-in-time compiler that translates high-level Python functions into optimized machine code at runtime. By leveraging the LLVM compiler infrastructure, it provides a framework for accelerating numerical data processing and mathematical computations, enabling performance levels comparable to statically compiled languages. The project distinguishes itself through its ability to perform type-inference-based specialization, which generates machine instructions tailored to the specific data types used during execution. It employs a lazy compilation pipeline that defers translation unt
PythonRobotics is a comprehensive collection of modular robotics algorithms and educational simulations designed for autonomous navigation, state estimation, and motion control. The project provides a library of standalone implementations for path planning, localization, mapping, and kinematics, serving as a resource for researchers and students to experiment with foundational and advanced robotic theories. The project distinguishes itself through an algorithm-centric design where each module functions as an isolated script, allowing for independent testing and clear pedagogical demonstration
Astropy is a core Python library for astronomy, providing a unified framework for astronomical data analysis, coordinate and time computations, and physical constants and unit handling. It is designed as a standard tool for the astronomy community, enabling consistent reading, processing, and visualization of FITS files and ASCII tables through a modular subpackage system that shares common interfaces and conventions. The library distinguishes itself through broad interoperability across astronomy software, establishing shared protocols for data exchange and collaboration. It includes a coord
Briefcase is a cross-platform build tool and native app packager that converts Python projects into standalone applications. It functions as a deployment framework designed to package Python code into binaries for desktop, mobile, and web platforms. The project utilizes a plugin-based architecture, allowing users to extend platform support and integrate new operating systems or specialized installation formats into the build process. The system handles cross-platform development through a configuration-driven build process. This covers capabilities including project generation from templates