示例#1
0
def test_max_no_bits():

    sdm = SparseDM(3)

    assert sdm.max_bits_in_full_dm == 0

    sdm.ensure_dense(0)
    assert sdm.max_bits_in_full_dm == 1
    sdm.ensure_dense(1)
    assert sdm.max_bits_in_full_dm == 2
    sdm.ensure_dense(2)
    assert sdm.max_bits_in_full_dm == 3

    sdm.ensure_classical(0)
    assert sdm.max_bits_in_full_dm == 3
    sdm.ensure_classical(1)
    assert sdm.max_bits_in_full_dm == 3
    sdm.ensure_classical(2)
    assert sdm.max_bits_in_full_dm == 3

    assert len(sdm.classical) == 3
    assert sdm.full_dm.no_qubits == 0
示例#2
0
def test_ensure_classical_fail_after_hadamard():
    sdm = SparseDM(10)
    sdm.hadamard(0)
    with pytest.raises(ValueError):
        sdm.ensure_classical(0)
示例#3
0
def test_ensure_classical_no_operation():
    sdm = SparseDM(10)
    sdm.ensure_dense(0)
    sdm.ensure_classical(0)
示例#4
0
def test_ensure_classical_simple():
    sdm = SparseDM(10)
    sdm.ensure_classical(0)