Skip to main content

A language for mental models

Project description

memo

memo is a new probabilistic programming language for expressing computational cognitive models involving sophisticated recursive reasoning, and for performing fast enumerative inference on such models. memo inherits from the tradition of WebPPL-based Bayesian modeling (see probmods, agentmodels, and problang), but aims to make models easier to write and run by taking advantage of modern programming language techniques and hardware capabilities.

Installing memo

  1. memo is based on Python. Before installing memo, make sure you have Python 3.12 or higher installed. You can check this by running python --version. (As of writing, Python 3.12 is the latest version of Python, and memo depends on several of its powerful new features.)
  2. Next, install JAX, a Python module that memo uses to produce fast, differentiable, GPU-enabled code. If you don't have a GPU, then running pip install jax should be enough. Otherwise, please consult the JAX website for installation instructions. You can check if JAX is installed by running import jax in Python.
  3. Finally, install memo by running pip install memo-lang. You can check if memo is installed by running from memo import memo in Python.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

memo_lang-0.1.2.tar.gz (12.4 kB view hashes)

Uploaded Source

Built Distribution

memo_lang-0.1.2-py3-none-any.whl (12.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page