Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Common quantum overlap #460

Open
vprusso opened this issue Feb 3, 2024 · 0 comments
Open

Feature: Common quantum overlap #460

vprusso opened this issue Feb 3, 2024 · 0 comments
Labels

Comments

@vprusso
Copy link
Owner

vprusso commented Feb 3, 2024

The common quantum overlap is defined in terms of a set of quantum states antidistinguishability.

It is not originally defined in this work (arXiv:2401.17980), but it is reproduced as a precursory definition:

Screenshot 2024-02-03 at 11 14 30 AM

Here, $A_Q^{[n]}$ is the antidistinguishability probability which can be computed in toqito as such:

 states = [...]
 probs = [1] * len(states)
 opt_val, _ = state_exclusion(vectors=states, probs=probs, primal_dual="dual")

where states is a list of np.array objects provided as row vectors that define individual quantum states. The opt_val term in this case would be $A_Q^{[n]}$.

Therefore, we would want some function like the following:

def common_quantum_overlap(states: list[np.ndarray]) -> float:
    n = len(states)
    probs = [1] * n
    opt_val, _ = state_exclusion(vectors=states, probs=probs, primal_dual="dual")
    return n * (1 - opt_val)

We would need to write an appropriate docstring with relevant references as well as tests. In the same paper (arXiv:2401.17980) there are examples that can be used as specific test cases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant