Skip to main content

utilities for working with bqpjson data

Project description

release:

https://badge.fury.io/py/bqpjson.svg Documentation Status

dev status:

Build Report Coverage Report Documentation Status

bqpjson is a minimalist python package for working with bqpjson data files, a json-based encoding of binary quadratic programs. A detailed description of the bqpjson data format is available here.

The package can be installed via:

pip install bqpjson

The bqpjson toolset includes:

  • bqpjson - python tools for the validation and transformation of bqpjson data (documentation)
  • bqpjson-schema.json - a JSON-Schema for bqpjson data files
  • spin2bool - a command line tool for converting a bqpjson data files between the spin and boolean variable spaces
  • bqp2qh - a command line tool for converting bqpjson data files into qubist compatible hamiltonians
  • bqp2qubo - a command line tool for converting bqpjson data into qubo data
  • bqp2mzn - a command line tool for converting bqpjson data into a minizinc model
  • bqp2hfs - a command line tool for converting bqpjson data into hfs data

An example of bqpjson data:

{
  "description":"a simple model",
  "id": 0,
  "linear_terms": [
    {"coeff":  1.3, "id": 2},
    {"coeff": -0.7, "id": 6}
  ],
  "metadata": {},
  "offset": 0.0,
  "quadratic_terms": [
    {"coeff": -0.2, "id_head": 4, "id_tail": 2},
    {"coeff":  1.5, "id_head": 6, "id_tail": 2}
  ],
  "scale": 1.0,
  "variable_domain": "spin",
  "variable_ids": [2,4,6],
  "version": "1.0.0"
}

License

bqpjson is developed at Los Alamos National Laboratory and is provided under a BSD-ish license with a “modifications must be indicated” clause. See the LICENSE.md file for the full text. This package is part of the Hybrid Quantum-Classical Computing suite, known internally as LA-CC-16-032.

Changelog

staged

  • nothing

v0.5.3

  • added scaling and offset return values to bqpjson_to_hfs

v0.5.2

  • improved bqp2hfs robustness to coefficient precision issues
  • dropped support for python 2.7 and 3.4

v0.5.1

  • added support for translation to the HFS data format

v0.5.0

  • initial release

Project details


Download files

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

Files for bqpjson, version 0.5.3
Filename, size File type Python version Upload date Hashes
Filename, size bqpjson-0.5.3.tar.gz (8.5 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page