Solving problems with Q# and Qiskit
Mariia Mykhailova

#Quantum_Programming
#Q#
#Qiskit
#Python
#Quantum_computing
⚛️ فراتر از مبانی با راهنمای جامع برنامهنویسی کوانتومی
این را پیشاپیش میدانید: محاسبات کوانتومی حوزهای عمیق و پیچیده است.
کتاب Quantum Programming in Depth شما را از سطح مقدماتی فراتر میبرد و وارد دنیای حل مسائل عملی و برنامهنویسی کوانتومی با استفاده از Q# و Qiskit میکند.
نویسنده، Maria Mykhailova، توسعهدهنده ارشد نرمافزارهای کاربردی کوانتومی در شرکت PsiQuantum، در هر مرحله همراه شماست تا مفاهیم را با دیدی کاربردی بیاموزید.
🔬 در کتاب Quantum Programming in Depth خواهید آموخت:
• الگوریتمهایی برای حل مسائل چالشبرانگیز محاسبات کوانتومی
• نحوهٔ نوشتن برنامههای کوانتومی با Q# و Qiskit
• آزمایش و تست برنامههای کوانتومی با شبیهسازها و ابزارهای تخصصی
• ارزیابی عملکرد برنامههای کوانتومی روی رایانههای کوانتومی مقاوم در برابر خطا در آینده
💡 این کتاب به شما نشان میدهد چگونه خارج از آزمایشگاه یا کلاس درس، محاسبات کوانتومی را در عمل پیاده کنید.
با بررسی مسائل واقعی برنامهنویسی کوانتومی و نحوهٔ حل آنها، یاد میگیرید چگونه:
🧠 درباره فناوری
حرکت از مفاهیم پایهای فیزیک کوانتومی به سمت توسعه نرمافزار برای رایانههای کوانتومی چالشی بزرگ است.
الگوریتمهایی که از پدیدههای کوانتومی بهره میبرند، نیازمند شیوهای تازه از تفکر در مورد محاسبه و روشهای جدید برای نوشتن، آزمایش و ارزیابی عملکرد کد هستند.
این کتاب شکاف میان نظریه محاسبات کوانتومی و برنامهنویسی عملی کوانتومی را پر میکند.
💻 درباره کتاب
کتاب Quantum Programming in Depth به روشی کاربردی و پروژهمحور آموزش میدهد که خواننده را با حل مسائل واقعی و چالشهای برنامهنویسی گامبهگام همراه میکند.
در طول مطالعه، شما الگوریتمهای کوانتومی طراحی کرده و عملکرد آنها را روی رایانههای کوانتومی آینده بررسی خواهید کرد.
📘 آنچه در این کتاب خواهید یافت:
• حل مسائل پیچیده محاسبات کوانتومی
• نوشتن برنامههای کوانتومی با Q# و Qiskit
• تست و اشکالزدایی برنامههای کوانتومی
• ارزیابی عملکرد الگوریتمها و برنامههای کوانتومی
👩💻 مخاطبان کتاب
برای دانشجویان و مهندسان نرمافزار آشنا با Python و مفاهیم پایهای محاسبات کوانتومی.
📚 فهرست مطالب
فصل ۱: محاسبات کوانتومی؛ هیاهو و امید
فصل ۲: آمادهسازی حالتهای کوانتومی
فصل ۳: پیادهسازی عملیات کوانتومی
فصل ۴: تحلیل حالتهای کوانتومی
فصل ۵: تحلیل عملیات کوانتومی
فصل ۶: ارزیابی توابع کلاسیک روی رایانهٔ کوانتومی
فصل ۷: الگوریتم جستوجوی گروور (Grover’s Search Algorithm)
فصل ۸: حل مسئله N-Queens با استفاده از الگوریتم گروور
فصل ۹: ارزیابی عملکرد الگوریتمهای کوانتومی
👩🔬 درباره نویسنده
Maria Mykhailova مهندس ارشد نرمافزار کوانتومی در Microsoft Quantum است. او از سال ۲۰۱۷ به تیم توسعه پیوست و در ساخت نسخه نخست زبان برنامهنویسی Q# نقش داشت.
او بر توسعه نرمافزار برای محاسبات کوانتومی مقاوم در برابر خطا و آموزش در پروژه Azure Quantum Development Kit تمرکز دارد.
Maria بنیانگذار و نگهدارندهٔ پروژه Quantum Katas است؛ مجموعهای متنباز از آموزشهای عملی و تمرینهای برنامهنویسی برای یادگیری محاسبات کوانتومی.
او همچنین از سال ۲۰۲۰ مدرس پارهوقت درس مقدمهای بر محاسبات کوانتومی در دانشگاه Northeastern University است و نویسندهٔ کتاب Q# Pocket Guide از انتشارات O’Reilly نیز میباشد.
Go beyond the basics with this in-depth guide to quantum programming.
Here’s something you already know: quantum computing is a deep subject. Quantum Programming in Depth takes you beyond quantum basics and shows you how to take on practical quantum problem solving and programming using Q# and Qiskit. Author Mariia Mykhailova, a principal quantum applications software developer at PsiQuantum, guides you every step of the way.
In Quantum Programming in Depth you’ll explore:
• Algorithms to solve challenging quantum computing problems
• Writing quantum programs with Q# and Qiskit
• Testing quantum programs with simulators and specialized tools
• Evaluating performance of quantum programs on future fault-tolerant quantum computers
Quantum Programming in Depth shows you how to do quantum computing outside the lab or classroom, presenting problems of quantum programming and demonstrating how they’re solved. You’ll learn to write quantum programs using Qiskit and Q#—and even how to test your quantum code using common testing tools like pytest. You’ll learn to prepare quantum states and implement operations, extract information from quantum states and operations, evaluate classical functions on a quantum computer, solve search problems, and more.
About the Technology
Going from the basic quantum concepts to developing software for quantum computers can be difficult! Algorithms that leverage quantum phenomena require new ways of thinking about computation and new approaches to writing code, testing it, and evaluating its performance. This book bridges the gap between QC theory and quantum programming in practice.
About the Book
Quantum Programming in Depth shows you how to solve quantum computing problems in a programmer-friendly way. The book’s hands-on project-based approach will hone your quantum skills using realistic problems and progressively harder programming challenges. As you read, you’ll design quantum algorithms and explore their performance on future fault-tolerant quantum computers.
What’s Inside
• Solve challenging quantum computing problems
• Write quantum programs with Q# and Qiskit
• Test quantum programs
• Evaluate performance of quantum programs
About the Readers
For students and software engineers who know Python and the basic concepts of quantum computing.
Table of Contents
1 Quantum computing: The hype and the promise
Part 1 Building your own library
2 Preparing quantum states
3 Implementing quantum operations
Part 2 Learning information about a quantum system
4 Analyzing quantum states
5 Analyzing quantum operations
Part 3 Solving a classical problem using a quantum algorithm
6 Evaluating classical functions on a quantum computer
7 Grover’s search algorithm
8 Solving N queens puzzle using Grover’s algorithm
9 Evaluating the performance of quantum algorithms
Mariia Mykhailova is a principal quantum software engineer at Microsoft Quantum. She has been part of the team since early 2017, joining just in time to participate in the development of the first version of the quantum programming language that became Q#. She works on developing software for fault-tolerant quantum computation, as well as quantum education and outreach for Azure Quantum Development Kit. Mariia is the author and maintainer of the Quantum Katas project – an open-source collection of hands-on tutorials and programming problems for learning quantum computing. She is also a part-time lecturer at Northeastern University, teaching Introduction to Quantum Computing since 2020, and the author of the O'Reilly book Q# Pocket Guide.









