# Maple implementations

Contact: hamza.jaffali[at]utbm.fr

## Version and execution

The *Maple* code provided was developed and
executed the Maple 17 version of the software developed by Maplesoft.

Maple is available on Windows, MacOS and Linux.

The provided code can executed using the graphical version of *Maple*, as well
as the *Maple* command prompt.

The `.mpl`

files can be opened as text files and their content can be
copy/pasted in *Maple*, they can also be directly imported in *Maple*. The `.mw`

are worksheets, which are usable by the graphical environment only (they bear
execution information).

## Classification of 4-qubits

This code has been developed to determine the orbit or family of four-qubits systems. It is based on the evaluation of invariant and covariant polynomials. Two algorithms were implemented : the first one determines the Verstraete family of a given state, and the second one determines the corresponding strata of the nullcone.

We use these algorithms to study the entanglement class of four-qubit hypergraph states.

We detail bellow the files provided in the related folder :

```
* `algo_classes_4_qubits.mpl` : Maple code in plain text regrouping all the functions to compute four-qubit entanglement classes
* `algo_classes_4_qubits.mw` : Maple 17 Worksheet providing the same code as the .mpl file
* `vect_cov1.mpl` : Maple code defining all the covariants used in the algorithm determining the Verstraete family
* `vect_cov2.mpl` : Maple code defining all the covariants used in the algorithm determining the strate of the nullcone
```

## Computation of simple singularities

This code has been developed to determine the simple singularity associated to for n-qubits systems, with n=4,5,6,7,8.

We use this code to determine the simple singularities associated with several hypergraph and graph states, in order to characterize the entanglement class related with these states.

We regrouped the code into two folders.

The folder `Example_5-qubits`

contains the following files :

```
* `5_qubits_sing.mpl` : Maple code in plain text for computing simple singularities for 5-qubit systems
* `5_qubits_sing.mw` : Maple 17 Worksheet providing the code for computing simple singularities for 5-qubit systems
* `5_qubits_singu.mpl` : Output text file generated by the Maple code regrouping all the isolated simple singularities
* `5_qubits_nsingu.mpl` : Output text file generated by the Maple code regrouping all the non-isolated simple singularities
```

The folder `Others_cases`

contains the following files :

```
* `4_qubits_sing.mw` : Maple 17 Worksheet providing the code for computing simple singularities for 4-qubit systems
* `6_qubits_sing.mw` : Maple 17 Worksheet providing the code for computing simple singularities for 6-qubit systems
* `7_qubits_sing.mw` : Maple 17 Worksheet providing the code for computing simple singularities for 7-qubit systems
* `8_qubits_sing.mw` : Maple 17 Worksheet providing the code for computing simple singularities for 8-qubit systems
```