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.2.0.tar.gz (6.5 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.2.0-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: dydact_lab-0.2.0.tar.gz
  • Upload date:
  • Size: 6.5 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.2.0.tar.gz
Algorithm Hash digest
SHA256 f4aaca6a14a6895cdc77056b770f390965d9288064dfc7a00a2e628b8aabc251
MD5 57da529094837379a5049c024261c117
BLAKE2b-256 cd5fb14716b9de353213d0a080330d2e7b4e9df859e3018e229d47fcd70e5b01

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dydact_lab-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 7.1 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e74fb30bd37a81ef5b0dda0c8dbdd2bfff86fd93acd695e971465409ddb7d4a8
MD5 cec8036a3f2d15615a3bcabf63ea1be1
BLAKE2b-256 ca5d0feeebe1152221a465828e7ede05dfb32e6b09c7fd9829d382ee6eff5c39

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