Encoding graph into a GBS

Hello I would like to clarify something about the process of encoding a graph into a GBS device. In paper such as this one it is said that once you have the doubled adjacency matrix \tilde{A} of the graph you can map that matrix to covariance matrix \Sigma of a pure Gaussian state through a series of matrix multiplications: \begin{equation} \Sigma = Q - \mathbb{I}_{2M}/2, \quad Q = (\mathbb{I} - X\tilde{A})^{-1}, \quad X = \begin{bmatrix} 0 & \mathbb{I}_{M}\\ \mathbb{I}_{M} & 0 \end{bmatrix} \end{equation}.\\ It is then said that the GBS device can be programmed according to this matrix \Sigma.

However in this paper the Takagi-Autonne decomposition of the adjacency matrix is taken to program the gates of the GBS. I would like to know if these methods are independent of each other? Can either one of them be used? And is there a reference that explains how to program the GBS device according to the matrix \Sigma as I can’t seem to find one in the first paper?

Hi @Amanuel, thank you for your question. We will be taking a look at it and coming back with an answer hopefully on Tuesday. Have a good weekend!

Hey @Amanuel,

give me another day to double check with the co-authors, it has been a while…:slight_smile:

Hi @Maria_Schuld , thanks so much for the reply! I’ve been doing some more reading and it seems to me that the series of equations I listed above only give you the covariance matrix of the Gaussian state that corresponds to the adjacency matrix. But to actually program the GBS device to sample from that Gaussian state I believe you need to know what squeezing parameter to set each squeezer to and what the angles of each beam splitter need to be. These values seem to only be obtained from the Takagi-Autonne decomposition of the adjacency matrix but I could be missing something.

Hey @Amanuel,

Yes, I finally had a look as well and what you say sounds spot on. They are both referring to the same idea, but the second paper you cite goes into more detail of how to actually implement the strategy.

Hope this helps? (Well, you technically answered your own question :slight_smile: )

Hi @Maria_Schuld, thank you for the confirmation!

@Amanuel @Maria_Schuld @CatalinaAlbornoz Thanks for this interesting thread. May I restart the discussion here rather than starting a new one.

  • Can one use any adjacency matrix (without the doubling step) ?
    I understand that the eigenvalues need to obey certain constraints, as mentioned in
    Xanadu | Welcome to Xanadu.

In the discussion thread

@jmarrazola mentioned that it may be possible. I am trying to confirm if I understood the answer correctly.
Thanks.

Hi @arund, welcome to the Forum!

There seem to be several questions within your question.

On one hand the doubling step is no longer needed in general.
However that doesn’t mean that any matrix can be encoded onto a specific device.
The specifics of the device will inform what matrices can be encoded. So the research question isn’t always “how can I encode a specific matrix” but also “what matrices can be encoded into my specific device”.

For example, Xanadu’s X8 device has restrictions such that only bipartite graphs can be embedded (amongst other constraints).

Let me know if this answers your question.
I hope this helps.

Hello @CatalinaAlbornoz, thanks for the patient reply. I went back to the GBS problem after a while and rejoined the community. The curated discussions were helpful.

Your answer helps, but somehow the conundrum in my mind still remains.

I want to ask two follow-up questions:

  • Does “no longer needed” mean that the “doubling” technique is redundant, or does it simply mean that (taking into consideration the constraints you mentioned) the Autone-Takagi factorization is the standard workflow for now?

  • In https://arxiv.org/pdf/1712.06729 (the stanza following Eq. 3, page 2), authors specifically discuss the issue of embedding a generic adjacency matrix. Even if cumbersome, the “doubling” technique seems to have value for a generic graph. Given that the hardware constraints may be unavoidable, should one follow the “doubling” workflow, or will Autone-Takagi factorization be sufficient?
    NB: For bipartite graphs the adjacency matrix can be recast in the block form, which is reminiscent of the doubling.
    Thanking you in advance.

Hi @arund,

  • I’m not sure if there’s a “standard workflow”, but I do know that there exist workflows that allow you to encode the matrix without the doubling technique. Let me know if this is still confusing.
  • I actually don’t know about your second question. The paper is from 2017 so I guess a lot more has become known since. I would guess that Autonne-Takagi factorization should be enough but it’s just a guess. I’ll check to see if anyone at Xanadu has more insights on this.

@CatalinaAlbornoz Thanks once again. You’re right about the factorization step.
This has been my conclusion as well. If it holds for the adjacency matrix of a general graph is a question that requires clarification. If you end up checking with internal people, kindly also let me know if the adjacency matrix be replaced by affinity/similarity matrices.

Hi @arund ,

My colleague Filippo shared some thoughts about your questions from last week:

The Bargmann A matrix, since it’s symmetric, can be regarded as the adjacency matrix of an undirected graph. It’s true that not every adjacency matrix is also a Bargmann A matrix, but it should be an easy fix: just make sure you rescale your adjacency matrix so that all of its eigenvalues have abs value < 1. Then it should be a valid A matrix of a pure GBS process. If you want it to be the A matrix of a mixed GBS (so no doubling, and it must have even dimension) there are additional constraints other than the one on the eigenvalues which further constrain the kinds of graphs you can represent with a GBS.

1 Like

Regarding your latest question about replacing the adjacency matrix by affinity/similarity matrices, you can use any n x n complex symmetric matrix (rescaled by the largest eigenvalue).

I hope this helps!

1 Like