# Introduction to quantum computing with Q# – Part 13, CHSH Game

Last time we had an in-depth look at the original Bell’s inequality, and we wrote some Q# code that allowed us to quickly empirically test the predictions of quantum mechanics in that area.

In today’s post, we will continue with a generalization of Bell’s inequalities, called Clauser-Horne-Shimony-Holt

inequality (in short CHSH), and discuss a simple game based on that. In the process, we will arrive at a remarkable conclusions - we will learn that for a certain class of simple boolean logic problems, they can be solved more efficiently when adopting a quantum strategy compared to a classical “common sense” approach.

# Introduction to quantum computing with Q# – Part 12, Bell’s inequality

After a short multi-part detour into the world of quantum cryptography, in this part 12 of the series, we are going to return to some of the foundational concepts of quantum mechanics, and look at the programmatic verification of Bell’s inequality.

# Q# Advent Calendar 2020 – Creating Q# Compiler Rewrite Steps

# Introduction to quantum computing with Q# – Part 11, EPR Quantum Key Distribution

In the last two posts we covered quantum key exchange using the B92 and BB84 protocols. Both of those depended with their security on the no-cloning theorem. Today we are going to dedicate a third post to the topic of quantum key distribution, and this time around we will explore a variant of key distribution relying on the phenomenon of entanglement and quantum correlations.

# Introduction to quantum computing with Q# – Part 10, B92 Quantum Key Distribution

In the last part of this series we started talking about the area of quantum cryptography, or more accurately, quantum key distribution. We dissected, in considerable amount of detail, the BB84 protocol, and discussed how it can lead to effectively unbreakable cryptography.

Today we shall continue with quantum key distribution by looking at a sibling to BB84, the B92 protocol.

# dotnet-script 1.0.0 released – with support for .NET 5.0 and C# 9

To celebrate the release of .NET 5.0, which happened yesterday, we are happy to announce the release of dotnet-script - with support for .NET 5.0 and C# 9.

In addition to that, we have decided that after such a long time since we started this project off, and a rather stable public API, it is high time to celebrate this .NET 5.0 release by additionally moving dotnet-script to version 1.0.0.

# Beautiful and compact Web APIs with C# 9, .NET 5.0 and ASP.NET Core

Almost fours year ago I blogged about building lightweight microservices with ASP.NET Core 1.2 (which actually never shipped in such version and later became ASP.NET Core 2.0). The idea there was to drop the notion of bloated MVC controllers, get rid of as much as we can of the usual verbosity of C# based applications, and use a set of simple extension methods and a few cutting edge features of ASP.NET Core to provide a node.js style experience for authoring Web APIs.

The article and the accompanying demo projects received quite a lot of attention, and I even got a chance to speak at some conference about these type of approaches to building focused, small microservices. With the .NET 5.0 in sight (.NET 5.0 RC2 is out at the time of writing this), and some remarkable features of C# 9, this “lightweight Web APIs” concept deserves a revisit, and this is what we will do in this blog post.

# Introduction to quantum computing with Q# – Part 9, BB84 Quantum Key Distribution

This is already part 9 of the series (time flies!). So far we have covered a wide array of topic around the nature of quantum computational units called qubits, superposition, entanglement, single-qubit gates, multi-qubit gates and some interesting concepts from the area of quantum information theory. In this post we will shift our attention to another interesting field in the quantum landscape - quantum cryptography. More specifically, we will explore a reference protocol for quantum key distribution, called BB884, discuss why it’s secure even when using a public channel to exchange qubits and realize a simple demonstrative implementation using Q#.

# Introduction to quantum computing with Q# – Part 8, Superdense coding

Last time, we discussed the quantum teleportation protocol, which relies on the phenomenon of quantum entanglement to move an arbitrary quantum state from one qubit to another, even if they are spatially separated. Today, we shall continue exploring the scenarios enabled by entanglement, by looking at the concept called “superdense coding”. It allows communicating two classical bits of information between two parties, by moving only a single qubit between them.

# Support for unimported types in Omnisharp and C# Extension for VS Code

Some time ago I blogged about new Omnisharp features - support for analyzers and support for Editorconfig. Those were at the time two of the most requested features on Github that we had. Today I wanted to let you know that we just shipped another one of those hugely requested functionalities - support for unimported types. In fact, since those previous two have been dealt with, this was the most requested feature that we had.

## About

Hi! I'm **Filip W.**, a cloud architect from Zürich 🇨🇭. I like Toronto Maple Leafs 🇨🇦, Rancid and quantum
computing. Oh, and I love
the Lowlands 🏴.

## Recent Posts

## Categories

- apache-cordova (1)
- asp.net-5 (17)
- asp.net-core (44)
- asp.net-mvc (35)
- asp.net-mvc-6 (7)
- asp.net-vnext (6)
- asp.net-web-api (96)
- astronomy (1)
- azure (9)
- azure-service-bus (1)
- benchmark-dotnet (1)
- bing-maps (1)
- blazor (1)
- c-plus (2)
- c-sharp (152)
- csharp-10 (2)
- dnx (3)
- dotnet-cli (2)
- dotnet-script (10)
- duende (1)
- editorconfig (1)
- entity-framework (2)
- espn-api (2)
- events (1)
- fsharp (1)
- git (1)
- glimpse (1)
- html5 (4)
- identity-server (2)
- iis (2)
- il (1)
- intro-to-qc (19)
- javascript (9)
- jquery (4)
- jquery-mobile-metro (1)
- katana (2)
- kindle (1)
- knockout.js (8)
- last.fm-api (2)
- linq (1)
- mac (2)
- mathematica (1)
- msbuild (3)
- mvc-core (3)
- nancy (2)
- native (1)
- net (140)
- net-5 (3)
- net-6 (5)
- net-7 (6)
- net-core (49)
- net-sdk (2)
- ninject (2)
- odata (4)
- oidc (1)
- omnisharp (13)
- osx (2)
- owin (5)
- php (1)
- q-sharp (29)
- qir (1)
- quantum-computing (30)
- roslyn (30)
- scriptcs (11)
- scripting (9)
- security (4)
- servicestack (2)
- signalr (7)
- swift (2)
- testing (5)
- twitter-boostrap (1)
- typescript (1)
- visual-studio (4)
- visual-studio-code (11)
- wasi (2)
- wasm (2)
- windows-phone-7 (1)
- wordpress (1)
- wpf (2)