Skip to main content

Official Python SDK for DOLAS Lab — universal-substrate reasoning API

Project description

dydact-lab

Official Python SDK for DOLAS Lab — universal-substrate reasoning API.

Zero-parameter, zero-training geometric compilation across domains: symbolic math, constraint satisfaction (Sudoku, SAT), chemistry (SMILES), and circuit equivalence — all served from a single op-routed endpoint.

pip install dydact-lab

Quickstart

from dydact_lab import Lab

lab = Lab(api_key="sk-dol-...")           # or set env DOLAS_API_KEY

# Math — LaTeX, sympy, or Python syntax
r = lab.math.evaluate("sqrt(3**2 + 4**2)")
print(r.result["value"])                   # → 5.0

# Sudoku — any perfect-square N (4, 9, 16, 25)
grid = [[5,3,0,0,7,0,0,0,0], ...]
r = lab.sudoku.solve(grid)
print(r.result["solved"], r.elapsed_ms)    # → True, ~30 ms

# Chemistry — SMILES → geometric signature + zero-shot properties
r = lab.smiles.encode("CN1C=NC2=C1C(=O)N(C(=O)N2C)C")  # caffeine
print(r.result["properties"]["molecular_weight"])

# Circuit equivalence — ISCAS'85 .bench format
r = lab.circuit.equivalence(bench_a, bench_b)
print(r.result["equivalent"])

# Boolean SAT — CNF as list of [(var_idx, negated), ...]
clauses = [[(0,False),(1,True),(2,False)], [(0,True),(1,False),(2,True)]]
r = lab.sat.solve(clauses, n_vars=3)
print(r.result["sat"], r.result["assignment"])

Async

import asyncio
from dydact_lab import AsyncLab

async def main():
    async with AsyncLab(api_key="sk-dol-...") as lab:
        r = await lab.math.evaluate("2+2")
        print(r.result["value"])

asyncio.run(main())

Capability discovery

lab.ops()    # → list of all ops + schemas supported by the deployed backend

Unified compute (low-level)

Every namespace call routes through the same single endpoint:

r = lab.compute("math.evaluate", {"math": "2+2"})

This is by design — minimizes API surface, makes adding new ops a backend-only change.

Reproducibility

Every response includes a trace_id (SHA-256 of op + input + options) you can cite in publications. The compiler is deterministic given input + seed.

Tiers + auth

  • Academic — free for verified .edu researchers (citation required)
  • Pro Researcher — $79/mo
  • Lab Enterprise — $2,500/mo
  • DOLAS Strategic — contracted

Sign up: https://lab.dydact.io/signup

License

Apache-2.0.

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

dydact_lab-0.3.0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dydact_lab-0.3.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file dydact_lab-0.3.0.tar.gz.

File metadata

  • Download URL: dydact_lab-0.3.0.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for dydact_lab-0.3.0.tar.gz
Algorithm Hash digest
SHA256 a8ab57fdb3edebefc1386a7d413d15ef188d793d05076c49657728c98fe56c3f
MD5 68d684fe999137e0d5bb09b787d61eca
BLAKE2b-256 528902895f7480345e569269c5dba1ede183c27f16c15f87509171b3e13c6310

See more details on using hashes here.

File details

Details for the file dydact_lab-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: dydact_lab-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for dydact_lab-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9cf93a66e97abf3bec979ed4cfebe108cb8cbb6963946084fed730da8ba0a9c3
MD5 0fede6638552041a06a680943150b293
BLAKE2b-256 7ae69ecf6d5def4bd571d5a8bc7d284d676d3115e222aa8af6fe2b77d7543433

See more details on using hashes here.

Supported by

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