{"id":17661804,"url":"https://github.com/18520339/uts-quantum-computing","last_synced_at":"2025-04-15T02:28:06.622Z","repository":{"id":242135021,"uuid":"786680365","full_name":"18520339/uts-quantum-computing","owner":"18520339","description":"Interactive Showcases of Quantum Tic-Tac-Toe Game and Shor's Algorithm for Integer Factorization, covering various Quantum Computing concepts like Quantum Gates, Superposition \u0026 Entanglement, Measurement \u0026 Collapse, or Quantum Fourier Transform \u0026 Phase Estimation, etc.","archived":false,"fork":false,"pushed_at":"2025-01-10T15:13:22.000Z","size":3043,"stargazers_count":3,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-12T18:57:06.932Z","etag":null,"topics":["entanglement","factorization","google-colaboratory","ibm","modular-exponentiation","qiskit","quantum-algorithms","quantum-circuit","quantum-computing","quantum-fourier-transform","quantum-phase-estimation","qubits","shor-algorithm","superposition","tic-tac-toe"],"latest_commit_sha":null,"homepage":"https://medium.com/@danghoangquan.1999/make-a-fully-functional-quantum-tic-tac-toe-game-with-ibm-qiskit-0f9428c7ad1c","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/18520339.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-15T05:19:18.000Z","updated_at":"2025-04-12T15:03:21.000Z","dependencies_parsed_at":"2024-10-23T19:32:16.544Z","dependency_job_id":"89e59ffc-db13-4e60-97b1-4ec9f63cf6e6","html_url":"https://github.com/18520339/uts-quantum-computing","commit_stats":null,"previous_names":["18520339/quantumt3"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/18520339%2Futs-quantum-computing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/18520339%2Futs-quantum-computing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/18520339%2Futs-quantum-computing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/18520339%2Futs-quantum-computing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/18520339","download_url":"https://codeload.github.com/18520339/uts-quantum-computing/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248993303,"owners_count":21195169,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["entanglement","factorization","google-colaboratory","ibm","modular-exponentiation","qiskit","quantum-algorithms","quantum-circuit","quantum-computing","quantum-fourier-transform","quantum-phase-estimation","qubits","shor-algorithm","superposition","tic-tac-toe"],"created_at":"2024-10-23T17:42:40.111Z","updated_at":"2025-04-15T02:28:06.605Z","avatar_url":"https://github.com/18520339.png","language":"Jupyter Notebook","readme":"# Interactive Showcase of Quantum Computing Concepts\n\nThis repository contains my submissions for **2 assignments** in the **Introduction to Quantum Computing** subject at the **University of Technology Sydney** (UTS) taught by [Dr. Christopher Ferrie](https://profiles.uts.edu.au/Christopher.Ferrie) and [Dr. Christina Giarmatzi](https://profiles.uts.edu.au/Christina.Giarmatzi). \n\nEach assignment is done using IBM [Qiskit](https://github.com/Qiskit/qiskit) along with a **Google Colab** notebook, which includes a detailed implementation and explanation of the quantum concepts involved in a fun and interactive way.\n\n## [Assignment ∣01⟩ ⚛ Quantum Tic-Tac-Toe game ⚛](./assignment1_quantum_tictactoe/)\n\n\u003e Demo: https://www.youtube.com/watch?v=U6_wSh_-EQc\n\nThis is an enhanced version of the traditional Tic-Tac-Toe, incorporating elements of quantum mechanics, such as *quantum gates*, *superposition*, *entanglement*, etc., to add depth and complexity to the strategic gameplay.\n\nHere, I demonstrated the game rules, my **fair play mechanisms**, as well as its **measurement** and **collapse** processes. I also provided examples of movement operations, mainly focusing on the quantum aspects, such as *entanglement* and its associated **risk levels**.\n\n👉 For more details, check the [`assignment1_quantum_tictactoe`](./assignment1_quantum_tictactoe) folder.\n\n![](./assignment1_quantum_tictactoe/circuit.png)\n\n## [Assignment ∣02⟩ 🔐 Shor's Algorithm 🔐](./assignment2_shor_algorithm/)\n\n\u003e Demo: https://www.youtube.com/watch?v=BYKc2RnQMqo\n\nThis is an implementation of the Shor's Algorithm, a Quantum Algorithm for Integer Factorization. It is divided into 2 main parts:\n\n**1. Classical Part**: This involves reducing the problem of factorizing an integer $N$ to the problem of finding the period $r$ of a specific function.\n\n**2. Quantum Part**:\n- This involves using a quantum computer to **find the period $r$** efficiently. The algorithm creates a *superposition* of states to encode information about the period into the quantum state.\n- The **Quantum Fourier Transform** (QFT) is applied to the quantum state to extract the period $r$:\n\n    $$\\left| \\tilde{x} \\right\\rangle = QFT_N \\vert x \\rangle = \\frac{1}{\\sqrt{N}} \\sum_{k=0}^{N-1}  e^{2\\pi i \\frac{xk}{N}} \\vert k \\rangle$$\n    $$\\text{where N = number of qubits; } \\vert k \\rangle = \\vert k_1 k_2 \\cdots k_n \\rangle (\\text{binary qubit state })$$\n\n - This is a series of **Hadamard** and **Controlled Phase Rotation** gates to the output state of the **Modular Exponentiation** circuit. This transforms the state into a form where measuring the qubits can yield the period $r$ (just a change of basis).\n - This **Modular Exponentiation** is crucial for creating the periodic function. It involves applying a series of **controlled-U** gates, where $U$ represents modular multiplication.\n\n👉 For more details, check the [`assignment2_shor_algorithm`](./assignment2_shor_algorithm) folder.\n\n![](./assignment2_shor_algorithm/circuit.png)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F18520339%2Futs-quantum-computing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F18520339%2Futs-quantum-computing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F18520339%2Futs-quantum-computing/lists"}