# MinUPBSize

 Other toolboxes required MinUPBSize Gives the minimum cardinality of an unextendible product basis in given dimensions none UPB Unextendible product bases

MinUPBSize is a function that returns that minimum numbers of vectors required in an unextendible product basis (UPB), given the dimensions of the local Hilbert spaces. If the minimum size of a UPB in the given space is not known, and error will be produced.

## Syntax

• S = MinUPBSize(DIM)
• S = MinUPBSize(DIM,VERBOSE)

## Argument descriptions

• DIM: A vector that specifies the local Hilbert space dimensions.
• VERBOSE (optional, default 1): A flag (either 1 or 0) indicating that a reference to a journal article that provides a proof of the minimal size claimed by this script will or will not be displayed.

## Examples

The following code tells the user that the smallest UPB in $$\mathbb{C}^5 \otimes \mathbb{C}^6$$ has $$10$$ states, and points to the reference  for a proof of this fact:

>> MinUPBSize([5,6])
A proof of the minimal size in this case can be found in:
N. Alon and L. Lovasz. Unextendible product bases. J. Combinatorial Theory, Ser. A, 95:169-179, 2001.

ans =

10

The following code gives the same information, but without displaying the reference:

>> MinUPBSize([5,6],0)

ans =

10

The minimum size of UPBs is also known in many multipartite cases:

>> MinUPBSize([2,2,2,2,2,2,2,2])
A proof of the minimal size in this case can be found in:
N. Johnston. The minimum size of qubit unextendible product bases. In Proceedings of the 8th Conference on the
Theory of Quantum Computation, Communication and Cryptography (TQC 2013). E-print: arXiv:1302.1604 [quant-ph], 2013.

ans =

11

Unfortunately, there are also many cases where the minimum size of a UPB is not currently known. In these cases, and error is returned:

>> MinUPBSize([2,2,2,4])
??? Error using ==> MinUPBSize at 69
The minimum size of UPBs in the specified space is not currently known.