# Install yacas with Homebrew, apt, MacPorts, Nix

General purpose computer algebra system. Version 1.9.1 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:yacas
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install yacas
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install yacas
```

  Evidence: MacPorts ports tree: math/yacas/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install yacas
```

  Evidence: Debian stable package indexes: yacas from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#yacas
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ya/yacas/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:yacas
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/yacas>
- **Version:** 1.9.1
- **Source summary:** General purpose computer algebra system
- **Homepage:** <https://www.yacas.org/>
- **Repository:** <https://github.com/grzegorzmazur/yacas>
- **Upstream docs:** <https://www.yacas.org/>
- **License:** LGPL-2.1-or-later
- **Source archive:** <https://github.com/grzegorzmazur/yacas/archive/refs/tags/v1.9.1.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- yacas (cli)
- yacas (alias)

## Build dependencies

- cmake

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.9.1
- Local data: ok
- Upstream repository: https://github.com/grzegorzmazur/yacas
- Upstream latest detected: v1.9.1 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

Yacas, short for Yet Another Computer Algebra System, is a small open-source CAS with a C++ core, its own scripting language, arbitrary-precision arithmetic, and a library of symbolic-manipulation scripts. Its package-manager role is a compact command-line symbolic math environment rather than a giant notebook system.

### Project history

Yacas was started by Ayal Pinkus in the late 1990s, before Maxima and Axiom had become widely available as open-source systems. A 2007 Yacas project post describes that early period as a time when Yacas was one of the few open-source CAS options.

A 2002 paper by Ayal Z. Pinkus and Serge Winitzki presents Yacas as a do-it-yourself symbolic algebra environment: a small core interpreter plus script libraries that implement symbolic algebra functionality. That architecture remains visible in the current README, which emphasizes that users can write their own symbolic algorithms in the Yacas language.

The project later moved into a GitHub-hosted codebase and modern documentation maintained by Grzegorz Mazur and others. The Read the Docs site credits Ayal Pinkus, Serge Winnitzky, and Grzegorz Mazur for the documentation lineage, and the project site lists releases through the 1.9.x era.

### Adoption history

Yacas never became the dominant open-source CAS, but it persisted because it is small, scriptable, and easy to package. It has appeared in Unix package managers, had Java-related offshoots, and became especially visible to R users through Ryacas, an R interface to the Yacas computer algebra system.

Its adoption pattern is educational and embedded: users install yacas for interactive symbolic calculation, batch scripts, exact arithmetic, and experiments with symbolic algorithms, while downstream packages use it as a local CAS process or library-like backend.

### How it is used

Typical command-line use is interactive symbolic manipulation: simplifying expressions, differentiating, integrating, solving equations, matrix work, exact arithmetic, and running Yacas scripts. The official site stresses plain symbolic math and extensive documentation of the scripting language and algorithms.

For package users, the attraction is that yacas is lightweight and local. It is useful in teaching, shell-driven math exploration, and as a backend for language integrations such as Ryacas where a full commercial or heavyweight CAS would be too much.

### Why package nerds care

Yacas is package archaeology with real utility: a small CAS from the first wave of open-source symbolic algebra tooling that still fits naturally into Unix package managers. It packages a language, an interpreter, documentation, and an algorithm library in one modest command-line tool.

Its history also shows a different CAS model from Mathematica-style notebooks: keep the kernel small, put symbolic behavior in scripts, and let advanced users extend the algebra system from inside the packaged language.

### Timeline

- 1998: Ayal Pinkus later describes starting Yacas in this early open-source CAS period.
- 1999: Public summaries commonly identify Yacas as released or under active development by this year.
- 2002: Pinkus and Winitzki publish "YACAS: A Do-It-Yourself Symbolic Algebra Environment".
- 2008-2009: The Java version of Yacas is adopted/forked in the MathPiper/MathPiperIDE lineage.
- 2010s: Documentation and maintenance move through the modern yacas.org, Read the Docs, and GitHub project surfaces.
- 2020: The GitHub project lists yacas 1.9.1 as a July 2020 release.

### Related projects

- Ryacas is an R interface to the Yacas computer algebra system and one of the most visible downstream integrations.
- MathPiper/MathPiperIDE is related through the Java Yacas fork lineage.
- Maxima, Axiom, SymPy, GiNaC, and commercial CAS systems are neighboring symbolic math projects with different size and integration tradeoffs.

### Sources

- <https://github.com/grzegorzmazur/yacas>
- <https://github.com/r-cas/ryacas>
- <https://grzegorzmazur.github.io/ryacas/>
- <https://link.springer.com/chapter/10.1007/3-540-45470-5_29>
- <https://www.yacas.org/>
- <https://www.yacas.org/big_changes_ahead/>
- <https://yacas.readthedocs.io/en/latest/>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** yacas
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - yacas - 1.9.1+dfsg-1: normalized package name match | Debian stable package indexes: yacas from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Computer Algebra System | http://www.yacas.org
- Debian apt - yacas-doc - 1.9.1+dfsg-1: normalized package name match | Debian stable package indexes: yacas-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Documentation for Yacas | http://www.yacas.org
- Nix - yacas: normalized package name match | nixpkgs package indexes: pkgs/by-name/ya/yacas/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - yacas - 1.3.6-2.3: normalized package name match | Ubuntu 24.04 LTS package indexes: yacas from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Computer Algebra System | http://yacas.sourceforge.net
- Ubuntu apt - yacas-doc - 1.3.6-2.3: normalized package name match | Ubuntu 24.04 LTS package indexes: yacas-doc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Documentation for Yacas | http://yacas.sourceforge.net
- MacPorts - yacas: normalized package name match | MacPorts ports tree: math/yacas/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Scientific computing packages](https://www.automicvault.com/pkg/scientific-computing-tools/) - Matched scientific computing metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [fricas](https://www.automicvault.com/pkg/brew/fricas/) - Shares av.db curated category or tags: cas, cli, computer-algebra, mathematics, science.
- [maxima](https://www.automicvault.com/pkg/brew/maxima/) - Shares av.db curated category or tags: cli, computer-algebra, mathematics, science, symbolic-math.
- [singular](https://www.automicvault.com/pkg/brew/singular/) - Shares av.db curated category or tags: cli, computer-algebra, mathematics, science.
- [wxmaxima](https://www.automicvault.com/pkg/brew/wxmaxima/) - Shares av.db curated category or tags: cli, computer-algebra, mathematics, science.
- [msolve](https://www.automicvault.com/pkg/brew/msolve/) - Shares av.db curated category or tags: cli, computer-algebra, mathematics, science.
- [pari](https://www.automicvault.com/pkg/brew/pari/) - Shares av.db curated category or tags: cli, computer-algebra, mathematics, science.
- [calc](https://www.automicvault.com/pkg/brew/calc/) - Shares av.db curated category or tags: cli, mathematics, science.
- [cddlib](https://www.automicvault.com/pkg/brew/cddlib/) - Shares av.db curated category or tags: cli, mathematics, science.

## Combined YAML source

View the package source record on GitHub. [combined/yacas.yml](https://github.com/automic-vault/db/blob/main/combined/yacas.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
