Giter VIP home page Giter VIP logo

monogamy's Introduction

Quantum Monogamy

About

This folder contains a small python-module that allows you to discover multi-partite quantum-correlations. It was created as a research project for the lecture "Quantum Computation and Communication" given by Stephanie Wehner 2015 at TU Delft.

Introduction

Quantum Monogamy is a concept from Quantum Information theory. It describes the relation of different parties that may share (entangled) quantum systems. In particular, it can be shown that if two parties, Alice and Bob, share a maximally entangled state (e.g.: EPR-pair), there can be no third party (Charlie) be correlated with either Alice's or Bob's subsystem. Alice and Bob have stablished a monogamous correlation with each other, that limits the access on information for Charlie. However, if the correlation between Alice and Bob is not perfect but subject to noise, Charlie might share state information with Alice and could gain information about measurement outcomes between Alice and Bob.

In order to design robust quantum cryptographic protocols it is of high importance to investigate to what extent quantum states can be correlated between multiple parties.

Installing the module

The module is written in Python3. It depends on NumPy and CVXPY. If you want to use it, you first have to set up a working python3 environment with CVXPY on your system. Installation instructions are found here.

Once your python-environment runs CVXPY, clone the github-repository. If you start a python-shell in the cloned folder (recommended: IPython) you will be able to import and access the module for example by

import monogamy as mg

The interface of monogamy is documented in the examples below.

Using the module

The following IPython-notebooks illustrate how to use the module. Once you downloaded the IPython-notebooks, you can experiment with them locally and change some values to see what happens.

Monogamy of Werner States

As a research project, the module was supposed to be used to analyse a family of quantum states called Werner States. The following IPython-notebook summarizes the task and the obtained results, using the monogamy module.

Known limitations

  • All values that can be used in the density matrices are limited to reals. Complex numbers are no valid inputs and resulting global states will never contain complex numbers as well.
  • For larger systems (for example more than 5 qubits), the computational time for finding global states increases as highly constrained optimization problems on large matrices need to be solved.

Concluding remarks

If you are using this module or like it, let me know.

License

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

monogamy's People

Contributors

coolrunning avatar

Stargazers

 avatar

Watchers

 avatar  avatar

monogamy's Issues

Complex value in density matrices

Strictly spoken, we can have complex values in the density matrices. It needs to be evaluated, whether this is possible in conjunction with CVXPY.

Simplify constraints

So far, constraints need to be parsed elementwise for CVXPY, which could be rather inefficient for large matrices.

Bell Diagonal states

As an additional familiy of states, Bell diagonal states were suggested to explore.

state generator

Implement a generator that produce random density matrices.

multindex representation

Currently the monogamy uses a function to translate flat indices into multi-indexes. Numpy offers this functionality by having arrays of higher dimensions. This could simplify a lot of code.

Consistency check

There are some simple checks whether two substates can have an extension. This could be employed before constructing the optimization problem.

bitmask vs indices

The bitmaks to mark the traced out dimensions should be given alternatively as a list of indices describing the corresponding subsystems.

Crashes

Too high precision around the jumping points of the werner states causes crashes in CVXPY which need to be investigated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.