Skip to content

Releases: pedrorrivero/qrand

EntanglementProtocol

06 Jun 20:38
Compare
Choose a tag to compare

PyPI Coverage

Introducing the brand new EntanglementProtocol.

CHANGELOG

Feat

  • protocols: add EntanglementProtocol

Fix

  • QiskitBackend: correct configuration_dict entry for max_qubits
  • QuantumBitGenerator: raise error if _refill_cache fails

Unitary Hack

03 Jun 17:22
Compare
Choose a tag to compare

PyPI Coverage

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy validation suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach, being therefore the basis for the next major release 1.0.0.

This release was put together for, and during, unitaryHACK 2021.

Contributors

  • Avhijit Nair
  • Vishnu Ajith

CHANGELOG

Refactor

  • validation: add type hints
  • blockbit_frequency: rename to block_frequency
  • validate_natural_number: rename to validate_natural
  • qsharp: add validation and check imports
  • QsharpCircuit: Update type validaof gate angles
  • QsharpBackend: Remove #type: ignore
  • QsharpCircuit: Make gates a private property
  • QsharpJob: Add author, update date
  • QsharpJob: Remove generate_code, update azure shots
  • QsharpCircuit: Set type validation, add generate_code
  • QsharpBackend: Set validate_type for resource_id and target_id
  • QsharpCircuit: Fix 'else' indentation
  • Make Q# code better readable
  • QsharpJob: Update generate_code(),num_measurements
  • QsharpCircuit: Update measure()
  • Qrng: remove init
  • validate_natural_number: condense if statement
  • QsharpBackend: Update max_measurements
  • QsharpBackend: Update max_qubits and max_measurements
  • QsharpJob: Remove max_shots and max_experiments
  • QsharpCircuit: Update U3 gate
  • validate_type: rename type_class to classinfo
  • helpers: rename numeral_* to *_numeral
  • protocols: use raise_not_implemented_error function
  • move argument_validation from helpers to errors
  • errors: add raise_not_implemented_error
  • move argument_validation from errors to helpers
  • errors: add validate_natural_number function
  • errors: add validate_type function
  • errors: rename raise_deprecation_warn. to raise_future_warning

Perf

  • BlockFrequencyValidation: simplify floored quotient
  • compute_bounded_factorization: simplify algorithm

Fix

  • RunsValidation: correct frequency check
  • BlockFrequencyValidation: correct p_value calculation
  • MonobitFrequencyValidation: add input validation and min size
  • QsharpJob: fix datetime import
  • MonobitFrequencyValidation: fix return inequality
  • QiskitPlatform: add type validation
  • QiskitJob: add backend and circuit type validation

Feat

  • validation: adding RunsValidation
  • validation: cleaning doctring presentation for blockbit frequency
  • validation: fixing blockbit_frequency and adding doctring
  • validation: fixing blockbit_frequency validation
  • validation: adding blockbit_frequency validation
  • validation: add MonobitFrequencyValidation
  • validate_type: add multi-type input support
  • QsharpCircuit: Implement U2 and U3 gate
  • helpers: add validate_numeral
  • Implement Qsharp support

Unitary Hack

27 May 17:44
Compare
Choose a tag to compare
Unitary Hack Pre-release
Pre-release

DESCRIPTION

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy verification suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach.

This pre-release was put together for unitaryHACK 2021.

CHANGELOG

Refactor

  • helpers: merge numeral encoding functions in one module
  • Qrng: update get_complex_rect argument defaults
  • Qrng: convert to class wrapper [issue #14]
  • Qrng: redesign get_random_base32 and get_random_base64
  • QuantumBitGenerator: remove argument checks in random_uint
  • reverse_endian: rename bitstrings to numerals
  • HadamardProtocol: rename output to measurements
  • Qrng: reorder in public and private API

Fix

  • ValidationDecorator: fix BareQuantumProtocol instance check
  • QuantumBitGenerator: verify attribute types on set

Feat

  • QuantumBitGenerator: add default protocol [issue #14]
  • Qrng: add get_random_string
  • Qrng: add quantum_bit_generator property

Perf

  • Qrng: minimize bit consumption in get_random_float
  • QuantumBitGenerator: minimize bit consumption in random_uint

Unitary Hack

21 May 00:40
Compare
Choose a tag to compare
Unitary Hack Pre-release
Pre-release

DESCRIPTION

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy verification suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach.

This pre-release was put together for unitaryHACK 2021.

CHANGELOG

Refactor

  • platforms: remove unnecessary type ignore tags
  • QuantumBitGenerator: random bitstring and uint signature
  • HadamardProtocol: update private API signatures
  • restrict max_bits attribute to protocols

Feat

  • compute_bounded_factorization: add argument validation

Unitary Hack

19 May 22:51
Compare
Choose a tag to compare
Unitary Hack Pre-release
Pre-release

DESCRIPTION

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy verification suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach.

This pre-release was put together for unitaryHACK 2021.

CHANGELOG

Refactor

  • ValidationDecorator: remove validation_strategy setter
  • platforms: extract max_bits_per_request from QuantumBackend
  • QuantumBitGenerator: introduce BitCache interface

Feat

  • QuantumBitGenerator: add max_bits_per_request attribute
  • QuantumBitGenerator: add bitcache attribute
  • errors: add raise_deprecation_warning

Fix

  • platforms: update QuantumPlatform fetch_random_bits signature

Unitary Hack

18 May 21:19
Compare
Choose a tag to compare
Unitary Hack Pre-release
Pre-release

DESCRIPTION

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy verification suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach.

This pre-release was put together for unitaryHACK 2021.

CHANGELOG

Feat

  • platforms: new gates for quantum circuits

Refactor

  • caches: move BitCache to caches subpackage
  • protocols: rename PlaintResult to BasicResult
  • helpers: add is_bitstring
  • reverse_endian: rename argument

Unitary Hack

18 May 03:26
Compare
Choose a tag to compare
Unitary Hack Pre-release
Pre-release

DESCRIPTION

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy verification suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach.

This pre-release was put together for unitaryHACK 2021.

CHANGELOG

Feat

  • helpers: add reverse_endian
  • Qrng: add get_random_uint
  • Qrng: add get_random_decimal
  • Qrng: add get_random_bytes
  • Qrng: add random OCTAL, HEX, BASE32, and BASE64

Refactor

  • platforms: update QiskitJob constructor
  • platforms: extract QuantumBackend from QuantumJob
  • Qrng: rename get_bit_string to get_random_bitstring
  • Qrng: order methods alphabetically
  • Qrng: order methods alphabetically
  • Qrng: clean-up base32, base64, hex and octal

Fix

  • Qrng: reimplement get_bit_string with deprecation warning
  • Qrng: set default num_bits in get_random_bytes
  • Qrng: replace decode for encode in b32 and b64
  • Qrng: update output types in base32 and base64
  • Qrng: update random complex precision to double

Perf

  • Qrng: simplify imports

Unitary Hack

14 May 01:38
Compare
Choose a tag to compare
Unitary Hack Pre-release
Pre-release

DESCRIPTION

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy verification suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach.

This pre-release was put together for unitaryHACK 2021.

CHANGELOG

Refactor

  • protocols: rename stream to measurement
  • protocols: rename SimpleResult to PlainResult
  • platforms: change job output to list of measurements
  • rename repetitions to num_measurements

Fix

  • QiskitJob: update error and warning messages

Unitary Hack

13 May 02:42
Compare
Choose a tag to compare
Unitary Hack Pre-release
Pre-release

DESCRIPTION

A major architecture redesign introducing QuantumBitGenerator, QuantumPlatform, and QuantumProtocol. This allows to have a variety of possible quantum platforms (e.g. Qiskit, Cirq, Q#), as well as cross-compatible QRNG protocols along with a classical entropy verification suite that can be used to decorate any base quantum protocol.

Eventually these changes will deprecate the original QiskitBitGenerator approach.

This pre-release was put together for unitaryHACK 2021.

CHANGELOG

Fix

  • QiskitBitGenerator: move deprecation warning
  • update qiskit version dependency
  • platform-protocol circular dependency

Feat

  • add quantum_bit_generator

Refactor

  • platforms: rename quantum factory
  • imports
  • platforms: upgrade architecture
  • bit_cache: extract BitCache to a separate module
  • update package and module names
  • quantum_platforms: update circuit and job models
  • redesign architecture (preliminary)

Perf

  • QiskitPlatform: upgrade _compute_bounded_factorization

Qrng

24 Feb 22:45
Compare
Choose a tag to compare

PyPI Coverage

An integrated implementation of the QRNG PyPI package which makes use of QRAND's enhanced random bit generation and caching capabilities.

CHANGELOG

Feat

  • qrng: add default parameter values