Tutorial-1

Importing the package

import nz_seqtech

Importing quantum_dna_encoding module

from nz_seqtech.quantum_dna_encoding import (
    cosine_encoding, amplitude_encoding, qft_encoding,
    phase_encoding, NZ23_encoding, NZ22_encoding,
    draw_circuit, get_statevector, visualize_bloch_multivector,
    is_valid_dna_seq, visualize_state_hinton,
    visualize_state_city, visualize_state_paulivec
)

Testing the quantum DNA encoding methods

dna='AGTC'
m1=cosine_encoding(dna)
draw_circuit(m1)
_images/output_7_0.png
m2=amplitude_encoding(dna)
draw_circuit(m2)
_images/output_8_0.png
m3=qft_encoding(dna)
draw_circuit(m3)
_images/output_9_1.png
m4=phase_encoding(dna)
draw_circuit(m4)
_images/output_10_0.png

Note: For NZ22 and NZ23 encoding, a reference DNA sequence and the parameter alpha (float) are both required for encoding.

dna_ref='tgcc'
alpha=0.5
m5=NZ23_encoding(dna,dna_ref,alpha)
draw_circuit(m5)
_images/output_13_0.png
m6=NZ22_encoding(dna,dna_ref,alpha)
draw_circuit(m6)
_images/output_14_0.png

Testing the visualization methods

z=get_statevector(m1)
visualize_bloch_multivector(z)
_images/output_17_0.png
visualize_state_hinton(z)
_images/output_18_0.png
visualize_state_city(z)
_images/output_19_0.png
visualize_state_paulivec(z)
_images/output_20_0.png

N.B: For more informations and details about the methods, use the help function.

Example:

help(cosine_encoding)
Help on function cosine_encoding in module nz_seqtech.quantum_dna_encoding:

cosine_encoding(dna_seq)
    Encodes a DNA sequence into a quantum state using cosine encoding.

    Args:
        dna_seq (str): The DNA sequence to be encoded.

    Returns:
        QuantumCircuit: The quantum circuit representing the cosine encoding.