銀の光と碧い空

クラウドなインフラとC#なアプリ開発の狭間にいるエンジニアの日々

Q#

Microsoft Quantum Development KitやQ#の言語に関する記事です

Microsoft Q# Coding Contest – Summer 2020の復習(5) ユニタリーの識別

Q# DT

今回からは本選の解説をまとめていきます。 codeforces.com 今回は予選のA問題と同じくユニタリー操作を識別する問題A1~A7です。予選問題の解説まとめ記事はこちら。 tech.tanaka733.net

Microsoft Q# Coding Contest – Summer 2020の復習(4) 量子機械学習

Q# DT

Warmupラウンドの最後、D1とD2の量子機械学習のまとめです。 Problem - D1 - Codeforces Problem - D2 - Codeforces

Microsoft Q# Coding Contest – Summer 2020の復習(3) 状態の生成

Q# DT

本日はC1 |01⟩ + |10⟩ + |11⟩状態の生成です。 https://codeforces.com/contest/1356/problem/C

Microsoft Q# Coding Contest – Summer 2020の復習(2) 可逆計算

Q# DT

前回のA1~A5 ユニタリーの識別に引き続き、今回はB1,B2の可逆計算(Reversible computing)のおさらいです。 可逆計算をWikipediaで見てみると次のように書いています。 可逆計算(かぎゃくけいさん、英: Reversible computing)とは、可逆な、すなわち計算…

Microsoft Q# Coding Contest – Summer 2020の復習(1) ユニタリーの識別

Q# DT

1か月以上前ですが、Microsoft Q# Coding Contest がSummer 2020として今年も行われました。復習をまとめておきたいと思います。まずは、warmupのA問題、ユニタリーの識別です。公式の解説記事はこちらです。 codeforces.com A1からA5の問題は与えられたユニ…

Q#プロジェクトでC#のクラスが不要になりました

Q#

しばらくQ#の記事を書いていなかったのですが、最近のQ#の更新でC#のクラスが不要になっていたので久しぶりに記事を書きたいと思います。 少し古い記事ですが、Q#プロジェクトというのは、プロジェクトとしては.NET Coreのプロジェクトで、エントリポイント…

Q#のコードをAWS Lambdaでサーバーレス実行して、New Relicで監視する

量子コンピューターアドベントカレンダーの12日目のエントリです。 qiita.com 何かQ#のエントリ入れたいなあと思いつつ、いいネタがなかったので変化球で攻めたいと思います。Azure Quantumがまだ公開されていない中、AWS Bracketがリリースされたわけですが…

Microsoft Quantum Development Kit 0.10.1910.3107がリリースされました

Q#

11/1にMicrosoft Quantum Development Kit 0.10.1910.3107がリリースされました。 docs.microsoft.com 今回の更新ではあまり大きい変更点はないようです。 VS CodeとVSの拡張で、.NET Coreのバージョン依存性をなくすためにLanguage ServerをSelf Contained…

Microsoft Quantum Development Kit 0.9.1909がリリースされていました

Q#

9/30にQuantum Development Kit 0.9.1909がリリースされていました。珍しくリリースブログも公開されています。 cloudblogs.microsoft.com docs.microsoft.com 今回パッチバージョン扱いの更新ということもあり、Q#の機能そのものではなく、開発ツールまわり…

Microsoft Quantum Development Kit 0.9がリリースされていました

Q#

ブログを更新していなかった間に Microsoft Quantum Development Kit が 0.9までリリースされていました。 docs.microsoft.com 0.6については記事を書いたので、0.7から0.9までのリリースノートを簡単に日本語にしてみました。 tech.tanaka733.net 0.7 (2019…

AKSとQ#の試してみようリポジトリを公開しました

de:code 2019でMicrosoft MVP パーソナルスポンサーというものに選ばれまして、サンプルコードを公開していました。 www.microsoft.com 参加者向けのサンプルコードということなのですが、参加者の方にどのように伝えられたのか私は把握できておりませんので…

Microsoft Quantum Development Kit 0.6がリリースされていました

Q#

GWの最中、破壊的変更を含む0.6が出ていました。 docs.microsoft.com 主な変更点です。 (0.6より前からですが) Pythonとの連携が進み、Jupiter NoteBook上での実行ができるようになっています。これに伴って、インストールのドキュメントもPython推しになっ…

Quantum Development Kit 0.4がリリースされていました

Q#

知る限り特にアナウンスなどはなかったと思うのですが、Quantum Development Kit 0.4.1901がリリースされていました。リリースノートは更新されています。 docs.microsoft.com 更新方法は、いつもの通り.NET Coreのプロジェクトテンプレートの更新で、既存プ…

Qiskit を使ってQ#で記述した量子回路を描画する

Q#

Q# で書いた量子回路を回路図として表示したいというUserVoiceを見つけました。 div.uv-card {background: #fff;border: 1px solid #CED6E6;-moz-border-radius: 3px;-webkit-border-radius: 3px;border-radius: 3px;color: #5C5F66;font: normal 11px/1.3em…

Q#のGrover の探索アルゴリズムのサンプルコードをのぞいてみる その3

Q#

ひとりAdvent Calendar 24日目です。 adventar.org その1、その2に引き続き、Grover の探索アルゴリズムを見てみます。 tech.tanaka733.net https://tech.tanaka733.net/entry/2018/12/Grover%27s-search-algorithm-in-qsharp-sample-2tech.tanaka733.net 今…

Q#のGrover の探索アルゴリズムのサンプルコードをのぞいてみる その2

Q#

ひとりAdvent Calendar 23日目です。 adventar.org その1に引き続き、Grover の探索アルゴリズムを見てみます。 tech.tanaka733.net 今日はQuantum Database Search with Manual Oracle Definitionsでこれは前回の実装に確率振幅増幅が追加されているもので…

Q#のGrover の探索アルゴリズムのサンプルコードをのぞいてみる その1

Q#

ひとりAdvent Calendar 20日目です。 adventar.org 前回に引き続き今回はGroverの探索アルゴリズムのサンプルを覗いてみます。サンプルプロジェクトはこれです。 Quantum/Samples/src/DatabaseSearch at release/v0.3.1810 · Microsoft/Quantum · GitHub

Q#のDeutsch–Josza Algorithmのサンプルコードをのぞいてみる

Q#

ひとりAdvent Calendar 15日目です。 adventar.org 今日はQ#のサンプルにのっているDeutsch–Josza Algorithmのサンプルコードをのぞいてみたいと思います。アルゴリズムそのものの説明ではなく、そのアルゴリズムとテストコードをどのようにQ#で実装している…

Q# プロジェクトの構造を調べてみる

Q#

ひとりAdvent Calendar 10日目です。 adventar.org この資料などにも書いている内容なのですが、Quantum Development Kitで作成するQ#のプロジェクト構造についてまとめてみたいと思います。 Q#基礎 ver1.1 from Takayoshi Tanaka www.slideshare.net 対象バ…

IBM Q をQ#から動かしてみる

Q#

量子コンピューター Advent CalendarとひとりAdvent Calendar 3日目の記事です。 qiita.com adventar.org 別の記事を予定していたのですが、面白そうなネタを見つけたのでこちらに変えました。Q#で書いた量子アルゴリズムを、Q#側は変更せずにIBM Qで動かそ…

Quantum Development Kit が 0.3に更新されました

Q#

こちらのブログで案内されています。 cloudblogs.microsoft.com 今回は大きく3つの更新があります。 化学計算向けライブラリの追加 ドキュメントも追加されています。 docs.microsoft.com Q# 開発環境の改善 Visual Studio向け、Visual Studio Code向けのQ#…

Q# の開発環境を準備する (.NET Core CLI + Visual Studio Code編)

Q#

最近 Q# のセッションをすることが増えたので、開発環境の準備をまとめておこうと思います。今回は、.NET Core と Visual Studio Codeを利用する環境なので、Windows, Linux, macOSで使えるはずです。11月4日時点の情報で、Quantum Development Kit 0.3の情…

Q# で 1+1 を計算してみる

Q#

この前参加した勉強会で話題にでていたこの記事のコードをQ#で書いてみることにしました。 qiita.com qiita.com Q#の場合、現状シミュレーターしかないというのもありますが、あくまでQ#のQubitは論理量子ビットで、Q#で定義した論理量子ビットの操作から物…

Q# Coding Contestを題材にQuantum Oracleについてがんばって理解してみる

Q#

以前話題に出した Q# Coding ContestでQuantum Oracleについての問題があったのですが、Quantum Oracleとはなんなのか?というのを出てきた問題を題材に自分なりにまとめてみました。まず、Quantum Oracleについてはcoding contestのブログにて記事が出てい…

Q# のドキュメントやサンプルにpull requestを出してTシャツをもらおう

Q#

実はQ#に限定されないのですが、#Hacktoberfest と称してマイクロソフトがオープンソースへのcontributeをやってみようキャンペーンをしています。 open.microsoft.com 対象のリポジトリに対して、コードのほかにドキュメントやREADMEなどでもいいので、pull…

福岡.NET Conf で「ゼロから始めるQ#」のセッションをしました

Q#

昨年に引き続き福岡に戻ってきました。資料はこちらです。Q#に関するセッションはまだ数少ないので(自称)貴重ではないかと。 ゼロから始めるQ# from Takayoshi Tanaka www.slideshare.net といいつつ、時間が大幅に足りなかったので、質問などあればTwitter…

Microsoft Q# Coding Contest Summer の解説が公開されています

Q#

先週土曜から月曜にかけて開催された Microsoft Q# Coding Contest — Summer 2018 が終了しました。自分は2問しかとけなかったのですが、解説が公開されています。 codeforces.com 解説本体はPDFで公開されています。 https://assets.codeforces.com/rounds/…

Microsoft Q# Coding Contest warmupラウンドの自分の回答を公開しています

Q#

Microsoft Q# Coding Contest warmupラウンドが終了して結果として私は107位でした。自分にとってはたぶんこれが初めてのオンラインプログラミングコンテスト参加だったと思います。 また問題も公開されているようです。 codeforces.com というわけで自分が…

Q# Coding ContestでのDriverクラスの書き方

Q#

昨日紹介したQ# Coding Testですが、書いたクラスをテストするのに最初ちょっと戸惑ったのでメモしておきます。 codeforces.com 実際の問題は登録した後にみられて、今は3問ほど解説も見ることができます。が、テストするためのコードが書けないとそのあと…

Q# Programming Contestが開催されるようです

Q#

CodeforcesというプログラミングコンテストのサイトでQ# Programming Contestが開催されるようです。 codeforces.com 本番は7/6-9のようですが、6/29からwarmupラウンドということでいくつかの問題が出題されています。簡単な問題3つについては解説するとい…