#Quantum – Do you need more than 50 #Qubits? Google may help you

image1

Hi !

Today I need to to comment on a new that will make some noise:

A Preview of Bristlecone, Google’s New Quantum Processor

TLTR:

Google announced its new Quantum chip named [Bristlecone]. Interesting detail, it has 72 Qubits, and leaves behind the (until now leader) chip built by IBM with 50 Qubits.

At this point the interesting thing will be to see how Google handles error correction issues at that scale. Remember that when you increase the number of Qubits, the probability of having “dirty” data or unreliable information grows exponentially.

The important thing in this point, is that when passing the limit of 50 Qubits,
Google positions this chip as the first to present battle to the super computers we currently have. Before many get a good scare, it should be noted that a chip of these capabilities, on passes to the current super computers in only certain types of tasks.

As well, it is time to continue study quantum models and computing and to start making bets for 2020!

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts

 

#Quantum – Necesitas mas de 50 #Qubits? Google te los trae en bandeja

image1

Buenas!

Hoy toca comentar una noticia que dará que hablar:

A Preview of Bristlecone, Google’s New Quantum Processor

Os voy a ahorrar la lectura técnica:

Google anunció su nuevo Quantum chip llamado [Bristlecone]. Detalle interesante, el mismo posee 72 Qubits, y deja atrás al (hasta ahora líder) chip construido por IBM con 50 Qubits.

En este punto lo interesante será ver como Google maneja los índices de errores a esa escala, cabe recordar que al subir el numero de Qubits, la probabilidad de tener datos “sucios” o información no fiable crece exponencialmente.

Lo importante en este punto, es que al pasar del límite de los 50 Qubits, Google posiciona a este chip como el primero en presentar batalla a los super ordenadores que tenemos actualmente. Antes de que muchos se lleven un buen susto, hay que remarcar que un chip de estas capacidades, sobre pasa a los super ordenadores actuales en solo determinados tipos de tareas.

Pues bien, a seguir dedicándole un poco de tiempo a estudiar modelos cuánticos y a comenzar a hacer apuestas para el 2020!

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts

 

#Quantum – The key for Mac and Linux is on Visual Studio Code #VSCode

Hi!

Yesterday I wrote that one of the most important news of the last Update of the Microsoft Quantum Development Kit was the support for Mac and Linux. Well, this is achieved because the basis of Q# is the interaction of a host in .Net Core 2.0 and the connection to the Quantum Simulator.
This allows us to work with Microsoft Quantum DevKit using any language that supports .Net. Where C # and F # may be the most popular. And it is on this basis that we can also use Microsoft Quantum DevKit in other platforms, using Visual Studio Code as a development tool

.

I1

From Visual Studio Marketplace we can download an extension for VSCode that allows us to create projects in Microsoft Quantum DevKit. As expected we can also debug, write our Q # code and more with VSCode.

The installation is very simple. We start installing the extension for VSCode

I2

A couple of PowerShell commands

I3

And that’s it! now it’s time to program some Qubits 😀

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts

 

#Quantum – La clave está en Visual Studio Code #VSCode

Buenas!

Ayer comente que una de las novedades más importantes del ultimo Update de Microsoft Quantum Development Kit era el soporte para Mac y Linux. Pues bien, esto se logra ya que la base de Q# es la interacción de un host en .Net Core 2.0 y la conexión con el Quantum Simulator. Esto nos permite trabajar con Microsoft Quantum DevKit utilizando cualquier lenguaje que soporte .Net. Donde C# y F# tal vez sean los más populares.

Y es sobre esta base que también podremos utilizar Microsoft Quantum DevKit en otras plataformas, utilizando Visual Studio Code como herramienta de desarrollo.

I1

Desde Visual Studio Marketplace podemos descargar una extensión para VSCode que nos permite crear proyectos en Microsoft Quantum DevKit. Como es de esperar también podemos depurar, escribir nuestro código Q# y más con VSCode.

La instalación es muy simple. Comenzamos instalando la extensión para VSCode

I2

Y luego un par de comandos en PowerShell

I3

Listo, ya es momento de comenzar a programar nuestros qubits!

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts

 

#Quantum – Improvements in the new version of Microsoft Quantum Development Kit (Linux, Mac, Python and more!)

 

I1.jpg

Hi!

February has been a month of events and sessions; March will be a month more dedicated to study and to build a couple of interesting projects. One of the issues that I have to take up again is Quantum Computing . I’ve already written some posts about it,
and today I find a new version of the Microsoft Quantum Development Kit.

The official article explains the improvements in detail. I will only highlight those that seem most interesting to me

  • Development in Mac, Linux and Windows environments. As it comes naturally in the Microsoft tools, they are not only contained and run in Windows, Linux and Mac are also supported. (And this is an excellent opportunity to put me once and for all with the Mac)

I2.jpg

  • Python support. Yes, it seems that Python will be in new JavaScript, it is everywhere and how could it be otherwise, Microsoft Quantum Development Kit, also supports Python.

teleportation-demo-1024x640.png

To complete the points I should mention the performance improvements of the simulator and that the DevKit is OpenSource. I guess I’ll have time to write about this in the near future.

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts

 

#Quantum – Mejoras en la nueva version de Microsoft Quantum Development Kit (Linux, Mac, Python y mas!)

 

I1.jpg

Buenas!

Febrero ha sido un mes de eventos y sesiones; Marzo será un mes mas dedicado al estudio y a build un par de proyectos interesantes. Uno de los temas que tengo que retomar es Computación Cuántica (A partir de ahora Quantum Computing). Ya he escrito algunos posts al respecto, y hoy me encuentro con una nueva version del Microsoft Quantum Development Kit.

El articulo oficial explica las mejoras en detalle. Yo solo remarcare las que me parecen más interesantes

  • Desarrollo en entornos Mac, Linux y Windows. Como viene siendo natural en las herramientas de Microsoft, las mismas ya no solo se contienen y ejecutan en Windows, Linux y Mac también son soportados. (Y esto es una excelente oportunidad para ponerme de una vez por todas con el Mac)

I2.jpg

  • Soporte para Python. Pues sí, parece que Python será en nuevo JavaScript, esta por todos lados y como no podía ser de otra manera, Microsoft Quantum Development Kit, también soporta Python.

teleportation-demo-1024x640.png

Para completar los puntos debería mencionar las mejoras en performance del simulador y que el DevKit es OpenSource. Supongo que ya tendré tiempo de escribir sobre esto en un futuro cercano.

 

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts

 

#VS2017 – Main Namespaces to be used in Q#

Hi!

When we create a new Q# (extension. qs) file, this new file has a main namespace (usualy our project name) and then it includes a series of namespaces that will be used in our operations. Something similar to this image

Clipboard02.jpg

The Q# file operation template includes 2 main namespaces to be used

    open Microsoft.Quantum.Primitive;

This namespace provides access to basic operations such as the Hadamard gates, X, M, CNOT gates, and more. The implementation of these operations depends on the target machine. This is important because we will have to take into account the process in a simulator or X Quantum Computer.

    open Microsoft.Quantum.Canon;

This namespace contains many useful functions for creating larger circuits, combinatorial and generic utilities. The implementation of the operations in the Canon is independent of the target machine, since they are built at the top of the primitive operations.

Happy QCoding!

Gretings @ Toronto

El Bruno

References

My Posts

 

#VS2017 – Namespaces principales para usar en Q#

 

Buenas!

Cuando creamos un fichero de Q# (extension .qs) el mismo suele estar definido por un Namespace y luego definir una serie de Namespaces que serán utilizados en nuestras operaciones

Usualmente se ve asi

Clipboard02.jpg

Los 2 namespaces que por defecto se agregan desde el template son

    open Microsoft.Quantum.Primitive;

Este namespace da acceso a operaciones básicas como las Hadamard Gates, CNOT Gates, etc. que son útiles para definir circuitos en operaciones cuánticas. La implementación de estas operaciones depende de la máquina de destino. Esto es importante ya que tendremos que tener en cuenta el proceso en un simulador o en X Quantum Computer.

    open Microsoft.Quantum.Canon;

El espacio de nombres Canon contiene muchas funciones útiles para crear circuitos más grandes, combinatorios y utilidades genéricas. La implementación de las operaciones en el Canon es independiente de la máquina de destino, ya que se construyen en la parte superior de las operaciones primitivas.

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts

 

#VS2017 – Releasing #Qubits using Reset() and ResetAll() in Q# on Microsoft Quantum Development Kit

HI!

Yesterday I wrote on the MResetZ() which allows us to get the status of a Qubit and release it. Well, at the end of each Q# operation, all the used Qubits need to be released for the simulator to work properly.

The following sample code will show a bad sample where a Qubit is used and not released correctly:

So, in runtime we will find this amazing and cool error:

I1

Microsoft.Quantum.Simulation.Simulators.Exceptions.ReleasedQubitsAreNotInZeroState

  HResult=0x80131500

  Message=Released qubits are not in zero state.

  Source=Microsoft.Quantum.Simulation.Simulators

Microsoft Quantum Development Kit offers us a series of operations that help us to release Qubits: Reset() and ResetAll(). As its name indicates Reset() is intended to release a single Qubit and ResetAll() to release an array of Qubits.

Given a single Qubit, Reset() evaluates the Qubit state and ensures that the Qubit is in the state |0⟩ so it can be safely released.

The following 2 operations show examples of how to use these operations

 

Happy QCoding!

Greetings @ Toronto

El Bruno

References

My Posts

 

#VS2017 – Liberando #Qubits utilizando Reset() y ResetAll() con Microsoft Quantum Development Kit

 

Buenas!

Ayer comente como la operación MResetZ() nos permite obtener el estado de un Qubit y liberar al mismo. Pues bien, al final de cada operación los Qubits tienen que ser liberados para que el simulador funcione correctamente.

Nota: La palabra en inglés es Release, la traducción de “liberado” no me termina de gustar.

En un código como el siguiente, donde se utiliza un Qubit y no se libera correctamente, nos encontraremos con el siguiente error:

I1

Microsoft.Quantum.Simulation.Simulators.Exceptions.ReleasedQubitsAreNotInZeroState

  HResult=0x80131500

  Message=Released qubits are not in zero state.

  Source=Microsoft.Quantum.Simulation.Simulators

Microsoft Quantum Development Kit nos ofrece una serie de operaciones que nos ayudan a liberar Qubits: Reset() y ResetAll(). Como su nombre lo indica Reset() esta pensado para liberar un único Qubit y ResetAll() para liberar un array de Qubits.

Dado un solo qubit, Reset() evalua su etado y se asegura que está en el estado |0⟩ tal que pueda ser liberado con seguridad

La siguientes 2 operaciones muestran ejemplos sobre como utilizar estas operaciones.

Happy QCoding!

Saludos @ Toronto

El Bruno

References

My Posts