Path: blob/main/frontend/vue/components/constants/megaMenuLinks.ts
3376 views
import { NavLink } from './../../../constants/menuLinks'12const wholeSection = 'whole-section'3const sectionBasicsCourse = 'basics-course'4const sectionIntroductionCourse = 'introduction-course'5const sectionQMLCourse = 'quantum-machine-learning'6const sectionPrerequisites = 'prerequisites'7const sectionQuantumStatesAndQubits = 'quantum-states-and-qubits'8const sectionMultipleQubitsAndEntanglement = 'multiple-qubits-and-entanglement'9const sectionGamesAndDemos = 'games-and-demos'10const sectionProtocolsAndAlgorithms = 'protocols-and-algorithms'11const sectionPulses = 'pulses'12const sectionApps = 'apps'13const sectionCircuits = 'circuits'14const sectionLabs = 'labs'15const sectionTutorials = 'tutorials'16const sectionSummerSchool = 'summer-schools'17const sectionProblemSets = 'problem-sets'1819const pathBasicsCourse = '/course/basics'20const pathIntroductionCourse = '/course/introduction'21const pathQuantumMachineLearning = '/course/machine-learning'22const pathPrerequisites = '/course/ch-prerequisites'23const pathQuantumStatesAndQubits = '/course/ch-states'24const pathMultipleQubitsAndEntanglement = '/course/ch-gates'25const pathGamesAndDemos = '/course/ch-demos'26const pathProtocolsAndAlgorithms = '/course/ch-algorithms'27const pathPulses = '/course/quantum-hardware-pulses'28const pathHardwareUsingCircuits = '/course/quantum-hardware'29const pathApps = '/course/ch-applications'30const pathLabs = '/course/ch-labs'31const pathProblemSets = '/problem-sets'32const pathSummerSchool = '/summer-school'3334const tutorialsBaseUrl = 'https://qiskit.org/documentation/tutorials'3536type MegaDropdownMenuGroup = {37title: NavLink,38content: NavLink[]39}4041const BASICS_COURSE: MegaDropdownMenuGroup = {42title: {43label: 'Basics of quantum information',44url: `${pathBasicsCourse}`,45segment: {46cta: wholeSection, location: sectionBasicsCourse47}48},49content: [50{51label: 'Single systems',52url: `${pathBasicsCourse}/single-systems`,53segment: {54cta: 'single_systems', location: sectionBasicsCourse55}56},57{58label: 'Multiple systems',59url: `${pathBasicsCourse}/multiple-systems`,60segment: {61cta: 'multiple_systems', location: sectionBasicsCourse62}63},64{65label: 'Circuits, protocols, and games',66url: `${pathBasicsCourse}/circuits-protocols-games`,67segment: {68cta: 'circuits_protocols_and_games', location: sectionBasicsCourse69}70}71]72}7374const INTRODUCTION_COURSE: MegaDropdownMenuGroup = {75title: {76label: 'Introduction Course',77url: `${pathIntroductionCourse}`,78segment: {79cta: wholeSection, location: sectionIntroductionCourse80}81},82content: [83{84label: 'Why Quantum Computing?',85url: `${pathIntroductionCourse}/why-quantum-computing`,86segment: {87cta: 'why-quantum-computing', location: sectionIntroductionCourse88}89},90{91label: 'The Atoms of Computation',92url: `${pathIntroductionCourse}/the-atoms-of-computation`,93segment: {94cta: 'the-atoms-of-computation', location: sectionIntroductionCourse95}96},97{98label: 'What is Quantum?',99url: `${pathIntroductionCourse}/what-is-quantum`,100segment: {101cta: 'what-is-quantum', location: sectionIntroductionCourse102}103},104{105label: 'Describing Quantum Computers',106url: `${pathIntroductionCourse}/describing-quantum-computers`,107segment: {108cta: 'describing-quantum-computers', location: sectionIntroductionCourse109}110},111{112label: 'Entangled States',113url: `${pathIntroductionCourse}/entangled-states`,114segment: {115cta: 'entangled-states', location: sectionIntroductionCourse116}117},118{119label: 'Visualizing Entanglement',120url: `${pathIntroductionCourse}/visualizing-entanglement`,121segment: {122cta: 'visualizing-entanglement', location: sectionIntroductionCourse123}124},125{126label: 'Grover\'s search algorithm',127url: `${pathIntroductionCourse}/grovers-search-algorithm`,128segment: {129cta: 'grovers-search-algorithm', location: sectionIntroductionCourse130}131},132{133label: 'Project',134url: `${pathIntroductionCourse}/project`,135segment: {136cta: 'project', location: sectionIntroductionCourse137}138}139]140}141142const QML_COURSE: MegaDropdownMenuGroup = {143title: {144label: 'Quantum Machine Learning',145url: `${pathQuantumMachineLearning}`,146segment: {147cta: wholeSection, location: sectionQMLCourse148}149},150content: [151{152label: 'Introduction',153url: `${pathQuantumMachineLearning}/introduction`,154segment: {155cta: 'introduction', location: sectionQMLCourse156}157},158{159label: 'Parameterized quantum circuits',160url: `${pathQuantumMachineLearning}/parameterized-quantum-circuits`,161segment: {162cta: 'parameterized-quantum-circuits', location: sectionQMLCourse163}164},165{166label: 'Data encoding',167url: `${pathQuantumMachineLearning}/data-encoding`,168segment: {169cta: 'data-encoding', location: sectionQMLCourse170}171},172{173label: 'Training parameterized quantum circuits',174url: `${pathQuantumMachineLearning}/training-quantum-circuits`,175segment: {176cta: 'training-quantum-circuits', location: sectionQMLCourse177}178},179{180label: 'Supervised learning',181url: `${pathQuantumMachineLearning}/supervised-learning`,182segment: {183cta: 'supervised-learning', location: sectionQMLCourse184}185},186{187label: 'Variational classification',188url: `${pathQuantumMachineLearning}/variational-classification`,189segment: {190cta: 'variational-classification', location: sectionQMLCourse191}192},193{194label: 'Quantum feature maps and kernels',195url: `${pathQuantumMachineLearning}/quantum-feature-maps-kernels`,196segment: {197cta: 'quantum-feature-maps-kernels', location: sectionQMLCourse198}199},200{201label: 'Unsupervised learning',202url: `${pathQuantumMachineLearning}/unsupervised-learning`,203segment: {204cta: 'unsupervised-learning', location: sectionQMLCourse205}206},207{208label: 'Quantum generative adversarial networks',209url: `${pathQuantumMachineLearning}/quantum-generative-adversarial-networks`,210segment: {211cta: 'quantum-generative-adversarial-networks', location: sectionQMLCourse212}213},214{215label: 'Project',216url: `${pathQuantumMachineLearning}/project`,217segment: {218cta: 'project', location: sectionQMLCourse219}220}221]222}223224const PREREQUISITES: MegaDropdownMenuGroup = {225title: {226label: 'Prerequisites',227url: `${pathPrerequisites}`,228segment: {229cta: wholeSection, location: sectionPrerequisites230}231},232content: [233{234label: 'Setting Up Your Environment',235url: `${pathPrerequisites}/environment-setup-guide-to-work-with-qiskit-textbook`,236segment: {237cta: 'setting-the-environment', location: sectionPrerequisites238}239},240{241label: 'Python and Jupyter Notebooks',242url: `${pathPrerequisites}/introduction-to-python-and-jupyter-notebooks`,243segment: {244cta: 'python-and-jupyter-notebooks', location: sectionPrerequisites245}246}247]248}249250const QUANTUM_STATES_AND_QUBITS: MegaDropdownMenuGroup = {251title: {252label: 'Quantum States and Qubits',253url: `${pathQuantumStatesAndQubits}`,254segment: {255cta: wholeSection, location: sectionQuantumStatesAndQubits256}257},258content: [259{260label: 'Introduction',261url: `${pathQuantumStatesAndQubits}/introduction`,262segment: {263cta: 'introduction', location: sectionQuantumStatesAndQubits264}265},266{267label: 'The Atoms of Computation',268url: `${pathQuantumStatesAndQubits}/the-atoms-of-computation`,269segment: {270cta: 'the-atoms-of-computation', location: sectionQuantumStatesAndQubits271}272},273{274label: 'Representing Qubit States',275url: `${pathQuantumStatesAndQubits}/representing-qubit-states`,276segment: {277cta: 'representing-qubit-states', location: sectionQuantumStatesAndQubits278}279},280{281label: 'Single Qubit Gates',282url: `${pathQuantumStatesAndQubits}/single-qubit-gates`,283segment: {284cta: 'single-qubit-gates', location: sectionQuantumStatesAndQubits285}286},287{288label: 'The Case for Quantum',289url: `${pathQuantumStatesAndQubits}/the-case-for-quantum-computers`,290segment: {291cta: 'the-case-for-quantum-computers', location: sectionQuantumStatesAndQubits292}293}294]295}296297const MULTIPLE_QUBITS_AND_ENTANGLEMENT: MegaDropdownMenuGroup = {298title: {299label: 'Multiple Qubits and Entanglement',300url: `${pathMultipleQubitsAndEntanglement}`,301segment: {302cta: wholeSection, location: sectionMultipleQubitsAndEntanglement303}304},305content: [306{307label: 'Introduction',308url: `${pathMultipleQubitsAndEntanglement}/introduction`,309segment: {310cta: 'introduction', location: sectionMultipleQubitsAndEntanglement311}312},313{314label: 'Multiple Qubits and Entangled States',315url: `${pathMultipleQubitsAndEntanglement}/multiple-qubits-and-entangled-states`,316segment: {317cta: 'multiple-qubits-and-entangled-states', location: sectionMultipleQubitsAndEntanglement318}319},320{321label: 'Phase Kickback',322url: `${pathMultipleQubitsAndEntanglement}/phase-kickback`,323segment: {324cta: 'phase-kickback', location: sectionMultipleQubitsAndEntanglement325}326},327{328label: 'Basic Circuit Identities',329url: `${pathMultipleQubitsAndEntanglement}/basic-circuit-identities`,330segment: {331cta: 'basic-circuit-identities', location: sectionMultipleQubitsAndEntanglement332}333},334{335label: 'Proving Universality',336url: `${pathMultipleQubitsAndEntanglement}/proving-universality`,337segment: {338cta: 'proving-universality', location: sectionMultipleQubitsAndEntanglement339}340},341{342label: 'Classical Computation on a Quantum Computer',343url: `${pathMultipleQubitsAndEntanglement}/classical-computation-on-a-quantum-computer`,344segment: {345cta: 'classical-computation-on-a-quantum-computer', location: sectionMultipleQubitsAndEntanglement346}347}348]349}350351const GAMES_AND_DEMOS: MegaDropdownMenuGroup = {352title: {353label: 'Games & Demos',354url: `${pathGamesAndDemos}`,355segment: {356cta: wholeSection, location: sectionGamesAndDemos357}358},359content: [360{361label: 'Bonus Level: Sandbox',362url: `${pathGamesAndDemos}/bonus-level-sandbox`,363segment: {364cta: 'bonus-level-sandbox', location: sectionGamesAndDemos365}366},367{368label: 'Estimating Pi Using Quantum Phase Estimation Algorithm',369url: `${pathGamesAndDemos}/estimating-pi-pi-using-quantum-phase-estimation-algorithm`,370segment: {371cta: 'estimating-pi-pi-using-quantum-phase-estimation-algorithm', location: sectionGamesAndDemos372}373},374{375label: 'Local Reality and the CHSH inequality',376url: `${pathGamesAndDemos}/local-reality-and-the-chsh-inequality`,377segment: {378cta: 'local-reality-and-the-chsh-inequality', location: sectionGamesAndDemos379}380},381{382label: 'Widgets Demonstration',383url: `${pathGamesAndDemos}/widgets-demonstration`,384segment: {385cta: 'widgets-demonstration', location: sectionGamesAndDemos386}387}388]389}390391const QUANTUM_PROTOCOLS_AND_ALGORITHMS: MegaDropdownMenuGroup = {392title: {393label: 'Quantum Protocols and Quantum Algorithms',394url: `${pathProtocolsAndAlgorithms}`,395segment: {396cta: wholeSection, location: sectionProtocolsAndAlgorithms397}398},399content: [400{401label: 'Defining Quantum Circuits',402url: `${pathProtocolsAndAlgorithms}/quantum-circuits`,403segment: {404cta: 'defining-quantum-circuits', location: sectionProtocolsAndAlgorithms405}406},407{408label: 'Deutsch-Jozsa Algorithm',409url: `${pathProtocolsAndAlgorithms}/deutsch-jozsa-algorithm`,410segment: {411cta: 'deutsch-jozsa-algorithm', location: sectionProtocolsAndAlgorithms412}413},414{415label: 'Bernstein-Vazirani Algorithm',416url: `${pathProtocolsAndAlgorithms}/bernstein-vazirani-algorithm`,417segment: {418cta: 'bernstein-vazirani-algorithm', location: sectionProtocolsAndAlgorithms419}420},421{422label: 'Simon\'s Algorithm',423url: `${pathProtocolsAndAlgorithms}/simons-algorithm`,424segment: {425cta: 'simons-algorithm', location: sectionProtocolsAndAlgorithms426}427},428{429label: 'Quantum Fourier Transform',430url: `${pathProtocolsAndAlgorithms}/quantum-fourier-transform`,431segment: {432cta: 'quantum-fourier-transform', location: sectionProtocolsAndAlgorithms433}434},435{436label: 'Quantum Phase Estimation',437url: `${pathProtocolsAndAlgorithms}/quantum-phase-estimation`,438segment: {439cta: 'quantum-phase-estimation', location: sectionProtocolsAndAlgorithms440}441},442{443label: 'Shor\'s Algorithm',444url: `${pathProtocolsAndAlgorithms}/shors-algorithm`,445segment: {446cta: 'shors-algorithm', location: sectionProtocolsAndAlgorithms447}448},449{450label: 'Grover\'s Algorithm',451url: `${pathProtocolsAndAlgorithms}/grovers-algorithm`,452segment: {453cta: 'grovers-algorithm', location: sectionProtocolsAndAlgorithms454}455},456{457label: 'Quantum Counting',458url: `${pathProtocolsAndAlgorithms}/quantum-counting`,459segment: {460cta: 'quantum-counting', location: sectionProtocolsAndAlgorithms461}462},463{464label: 'Quantum Teleportation',465url: `${pathProtocolsAndAlgorithms}/quantum-teleportation`,466segment: {467cta: 'quantum-teleportation', location: sectionProtocolsAndAlgorithms468}469},470{471label: 'Superdense Coding',472url: `${pathProtocolsAndAlgorithms}/superdense-coding`,473segment: {474cta: 'superdense-coding', location: sectionProtocolsAndAlgorithms475}476},477{478label: 'Quantum Key Distribution',479url: `${pathProtocolsAndAlgorithms}/quantum-key-distribution`,480segment: {481cta: 'quantum-key-distribution', location: sectionProtocolsAndAlgorithms482}483}484]485}486487const INVESTIGATING_Q_HW_USING_MICROWAVE_PULSES : MegaDropdownMenuGroup = {488title: {489label: 'Investigating Quantum Hardware Using Microwave Pulses',490url: `${pathPulses}`,491segment: {492cta: wholeSection, location: sectionPulses493}494},495content: [496{497label: 'Calibrating Qubits with Qiskit Pulse',498url: `${pathPulses}/calibrating-qubits-using-qiskit-pulse`,499segment: {500cta: 'calibrating-qubits-using-qiskit-pulse', location: sectionPulses501}502},503{504label: 'Accessing Higher Energy States',505url: `${pathPulses}/accessing-higher-energy-states-with-qiskit-pulse`,506segment: {507cta: 'accessing_higher_energy_states-with-qiskit-pulse', location: sectionPulses508}509},510{511label: 'Introduction to Transmon Physics',512url: `${pathPulses}/introduction-to-transmon-physics`,513segment: {514cta: 'introduction-to-transmon-physics', location: sectionPulses515}516},517{518label: 'Circuit Quantum Electrodynamics',519url: `${pathPulses}/circuit-quantum-electrodynamics`,520segment: {521cta: 'circuit-quantum-electrodynamics', location: sectionPulses522}523},524{525label: 'Exploring the Jaynes-Cummings Hamiltonian with Qiskit Pulse',526url: `${pathPulses}/exploring-the-jaynes-cummings-hamiltonian-with-qiskit-pulse`,527segment: {528cta: 'exploring-the-jaynes-cummings-hamiltonian-with-qiskit-pulse', location: sectionPulses529}530},531{532label: 'Measuring the Qubit ac-Stark Shift',533url: `${pathPulses}/measuring-the-qubit-ac-stark-shift`,534segment: {535cta: 'measuring-the-qubit-ac-stark-shift', location: sectionPulses536}537},538{539label: 'Hamiltonian Tomography',540url: `${pathPulses}/hamiltonian-tomography`,541segment: {542cta: 'hamiltonian-tomography', location: sectionPulses543}544}545]546}547548const QUANTUM_ALGORITHMS_FOR_APPS : MegaDropdownMenuGroup = {549title: {550label: 'Quantum Algorithms for Applications',551url: `${pathApps}`,552segment: {553cta: wholeSection, location: sectionApps554}555},556content: [557{558label: 'Solving Linear Systems of Equations using HHL',559url: `${pathApps}/solving-linear-systems-of-equations-using-hhl-and-its-qiskit-implementation`,560segment: {561cta: 'solving-linear-systems-of-equations-using-hhl-and-its-qiskit-implementation', location: sectionApps562}563},564{565label: 'Simulating Molecules using VQE',566url: `${pathApps}/simulating-molecules-using-vqe`,567segment: {568cta: 'simulating-molecules-using-vqe', location: sectionApps569}570},571{572label: 'Solving combinatorial optimization problems using QAOA',573url: `${pathApps}/solving-combinatorial-optimization-problems-using-qaoa`,574segment: {575cta: 'solving-combinatorial-optimization-problems-using-qaoa', location: sectionApps576}577},578{579label: 'Solving Satisfiability Problems using Grover\'s Algorithm',580url: `${pathApps}/solving-satisfiability-problems-using-grovers-algorithm`,581segment: {582cta: 'solving-satisfiability-problems-using-grovers-algorithm', location: sectionApps583}584},585{586label: 'Hybrid quantum-classical Neural Networks with PyTorch and Qiskit',587url: `${pathApps}/hybrid-quantum-classical-neural-networks-with-pytorch-and-qiskit`,588segment: {589cta: 'hybrid-quantum-classical-neural-networks-with-pytorch-and-qiskit', location: sectionApps590}591},592{593label: 'Variational Quantum Linear Solver',594url: `${pathApps}/the-variational-quantum-linear-solver`,595segment: {596cta: 'the-variational-quantum-linear-solver', location: sectionApps597}598},599{600label: 'Quantum Image Processing - FRQI and NEQR Image Representations',601url: `${pathApps}/flexible-representation-of-quantum-images-frqi`,602segment: {603cta: 'flexible-representation-of-quantum-images-frqi', location: sectionApps604}605}606]607}608609const INVESTIGATING_Q_HW_USING_Q_CIRCUITS : MegaDropdownMenuGroup = {610title: {611label: 'Investigating Quantum Hardware Using Quantum Circuits',612url: `${pathHardwareUsingCircuits}`,613segment: {614cta: wholeSection, location: sectionCircuits615}616},617content: [618{619label: 'Introduction to Quantum Error Correction using Repetition Codes',620url: `${pathHardwareUsingCircuits}/introduction-to-quantum-error-correction-via-the-repetition-code`,621segment: {622cta: 'introduction-to-quantum-error-correction-via-the-repetition-code', location: sectionCircuits623}624},625{626label: 'Measurement Error Mitigation',627url: `${pathHardwareUsingCircuits}/measurement-error-mitigation`,628segment: {629cta: 'measurement-error-mitigation', location: sectionCircuits630}631},632{633label: 'Randomized Benchmarking',634url: `${pathHardwareUsingCircuits}/randomized-benchmarking`,635segment: {636cta: 'randomized-benchmarking', location: sectionCircuits637}638},639{640label: 'Measuring Quantum Volume',641url: `${pathHardwareUsingCircuits}/measuring-quantum-volume`,642segment: {643cta: 'measuring-quantum-volume', location: sectionCircuits644}645},646{647label: 'The Density Matrix & Mixed States',648url: `${pathHardwareUsingCircuits}/density-matrix`,649segment: {650cta: 'density-matrix', location: sectionCircuits651}652}653]654}655656const QUANTUM_COMPUTING_LABS : MegaDropdownMenuGroup = {657title: {658label: 'Quantum Computing Labs',659url: `${pathLabs}`,660segment: {661cta: wholeSection, location: sectionLabs662}663},664content: [665{666label: 'Lab 1. Quantum Circuits',667url: `${pathLabs}/lab-1-quantum-circuits`,668segment: {669cta: 'lab-1-quantum-circuits', location: sectionLabs670}671},672{673label: 'Lab 2. Single Qubit Gates',674url: `${pathLabs}/lab-2-single-qubit-gates`,675segment: {676cta: 'lab-2-single-qubit-gates', location: sectionLabs677}678},679{680label: 'Lab 3. Quantum Measurement',681url: `${pathLabs}/lab-3-quantum-measurements`,682segment: {683cta: 'lab-3-quantum-measurements', location: sectionLabs684}685},686{687label: 'Lab 4. Bell Circuit & GHZ Circuit',688url: `${pathLabs}/lab-4-bell-ghz-circuit`,689segment: {690cta: 'lab-4-bell-ghz-circuit', location: sectionLabs691}692},693{694label: 'Lab 5. Accuracy of Quantum Phase Estimation',695url: `${pathLabs}/lab-5-accuracy-of-quantum-phase-estimation`,696segment: {697cta: 'lab-5-accuracy-of-quantum-phase-estimation', location: sectionLabs698}699},700{701label: 'Lab 6. Iterative Phase Estimation Algorithm',702url: `${pathLabs}/lab-6-iterative-phase-estimation-algorithm`,703segment: {704cta: 'lab-6-iterative-phase-estimation-algorithm', location: sectionLabs705}706},707{708label: 'Lab 7. Scalable Shor’s Algorithm',709url: `${pathLabs}/lab-7-scalable-shors-algorithm`,710segment: {711cta: 'lab-7-scalable-shors-algorithm', location: sectionLabs712}713},714{715label: 'Lab 8. Grover’s search with an unknown number of solutions',716url: `${pathLabs}/lab-8-grovers-search-with-an-unknown-number-of-solutions`,717segment: {718cta: 'lab-8-grovers-search-with-an-unknown-number-of-solutions', location: sectionLabs719}720},721{722label: 'Lab 9. Quantum Simulation as a Search Algorithm',723url: `${pathLabs}/lab-9-quantum-simulation-as-a-search-algorithm`,724segment: {725cta: 'lab-9-quantum-simulation-as-a-search-algorithm', location: sectionLabs726}727}728]729}730731const PROBLEM_SETS : MegaDropdownMenuGroup = {732title: {733label: 'Problem Sets',734url: `${pathProblemSets}`,735segment: {736cta: wholeSection, location: sectionProblemSets737}738},739content: [740{741label: 'Single Systems - Problem Set',742url: `${pathProblemSets}/single_systems_problem_set`,743segment: {744cta: 'single_systems_problem_set', location: sectionProblemSets745}746},747{748label: 'Quantum Enigma 001 - Problem Set',749url: `${pathProblemSets}/quantum_enigma_problem_set`,750segment: {751cta: 'quantum_enigma_problem_set', location: sectionProblemSets752}753}754]755}756757const QUANTUM_CIRCUITS: MegaDropdownMenuGroup = {758title: {759label: 'Quantum Computing Labs',760url: 'https://qiskit.org/documentation/tutorials.html#quantum-circuits',761segment: {762cta: wholeSection, location: sectionTutorials763}764},765content: [766{767label: 'Circuit Basics',768url: `${tutorialsBaseUrl}/circuits/01_circuit_basics.html`,769segment: {770cta: '01_circuit_basics', location: sectionTutorials771}772},773{774label: 'Getting Started with Qiskit',775url: `${tutorialsBaseUrl}/circuits/1_getting_started_with_qiskit.html`,776segment: {777cta: '1_getting_started_with_qiskit', location: sectionTutorials778}779},780{781label: 'Qiskit Visualizations',782url: `${tutorialsBaseUrl}/circuits/2_plotting_data_in_qiskit.html`,783segment: {784cta: '2_plotting_data_in_qiskit', location: sectionTutorials785}786},787{788label: 'Summary of Quantum Operations',789url: `${tutorialsBaseUrl}/circuits/3_summary_of_quantum_operations.html`,790segment: {791cta: '3_summary_of_quantum_operations', location: sectionTutorials792}793},794{795label: 'Circuit Tutorials',796url: `${tutorialsBaseUrl}/circuits/index.html`,797segment: {798cta: 'circuit_tutorials', location: sectionTutorials799}800}801]802}803804const ADVANCED_CIRCUITS: MegaDropdownMenuGroup = {805title: {806label: 'Advanced Circuits',807url: 'https://qiskit.org/documentation/tutorials.html#advanced-circuits',808segment: {809cta: wholeSection, location: sectionTutorials810}811},812content: [813{814label: 'Advanced Circuits',815url: `${tutorialsBaseUrl}/circuits_advanced/01_advanced_circuits.html`,816segment: {817cta: '01_advanced_circuits', location: sectionTutorials818}819},820{821label: 'Operators',822url: `${tutorialsBaseUrl}/circuits_advanced/02_operators_overview.html`,823segment: {824cta: '02_operators_overview', location: sectionTutorials825}826},827{828label: 'Visualizing a Quantum Circuit',829url: `${tutorialsBaseUrl}/circuits_advanced/03_advanced_circuit_visualization.html`,830segment: {831cta: '03_advanced_circuit_visualization', location: sectionTutorials832}833},834{835label: 'Transpiler Passes and Pass Manager',836url: `${tutorialsBaseUrl}/circuits_advanced/04_transpiler_passes_and_passmanager.html`,837segment: {838cta: '04_transpiler_passes_and_passmanager', location: sectionTutorials839}840},841{842label: 'Pulse gates',843url: `${tutorialsBaseUrl}/circuits_advanced/05_pulse_gates.html`,844segment: {845cta: '05_pulse_gates', location: sectionTutorials846}847},848{849label: 'Building Pulse Schedules',850url: `${tutorialsBaseUrl}/circuits_advanced/06_building_pulse_schedules.html`,851segment: {852cta: '06_building_pulse_schedules', location: sectionTutorials853}854},855{856label: 'Using the Scheduler',857url: `${tutorialsBaseUrl}circuits_advanced/07_pulse_scheduler.html`,858segment: {859cta: '07_pulse_scheduler', location: sectionTutorials860}861},862{863label: 'Obtaining information about your backend',864url: `${tutorialsBaseUrl}/circuits_advanced/08_gathering_system_information.html`,865segment: {866cta: '08_gathering_system_information', location: sectionTutorials867}868},869{870label: 'Advanced Circuit Tutorials',871url: `${tutorialsBaseUrl}/circuits_advanced/index.html`,872segment: {873cta: 'advanced_circuit_tutorials', location: sectionTutorials874}875}876]877}878879const CLASSICAL_SIMULATORS: MegaDropdownMenuGroup = {880title: {881label: 'Classical Simulators',882url: 'https://qiskit.org/documentation/tutorials.html#advanced-circuits',883segment: {884cta: wholeSection, location: sectionTutorials885}886},887content: [888{889label: 'Simulators',890url: `${tutorialsBaseUrl}/simulators/1_aer_provider.html`,891segment: {892cta: '01_advanced_circuits', location: sectionTutorials893}894},895{896label: 'Device backend noise model simulations',897url: `${tutorialsBaseUrl}/simulators/2_device_noise_simulation.html`,898segment: {899cta: '2_device_noise_simulation', location: sectionTutorials900}901},902{903label: 'Building Noise Models',904url: `${tutorialsBaseUrl}/simulators/3_building_noise_models.html`,905segment: {906cta: '3_building_noise_models', location: sectionTutorials907}908},909{910label: 'Applying noise to custom unitary gates',911url: `${tutorialsBaseUrl}/simulators/4_custom_gate_noise.html`,912segment: {913cta: '4_custom_gate_noise', location: sectionTutorials914}915},916{917label: 'Noise Transformation',918url: `${tutorialsBaseUrl}/simulators/5_noise_transformation.html`,919segment: {920cta: '5_noise_transformation', location: sectionTutorials921}922},923{924label: 'The Extended Stabilizer Simulator',925url: `${tutorialsBaseUrl}/simulators/6_extended_stabilizer_tutorial.html`,926segment: {927cta: '6_extended_stabilizer_tutorial', location: sectionTutorials928}929},930{931label: 'Matrix product state simulation method',932url: `${tutorialsBaseUrl}/simulators/7_matrix_product_state_method.html`,933segment: {934cta: '7_matrix_product_state_method', location: sectionTutorials935}936},937{938label: 'High-Performance Simulator Tutorials',939url: `${tutorialsBaseUrl}/simulators/index.html`,940segment: {941cta: 'high_performance_simulator_tutorials', location: sectionTutorials942}943}944]945}946947const ALGORITHMS: MegaDropdownMenuGroup = {948title: {949label: 'Algorithms',950url: 'https://qiskit.org/documentation/tutorials.html#algorithms',951segment: {952cta: wholeSection, location: sectionTutorials953}954},955content: [956{957label: 'An Introduction to Algorithms in Qiskit',958url: `${tutorialsBaseUrl}/algorithms/01_algorithms_introduction.html`,959segment: {960cta: '01_algorithms_introduction', location: sectionTutorials961}962},963{964label: 'Monitoring VQE convergence',965url: `${tutorialsBaseUrl}/algorithms/02_vqe_convergence.html`,966segment: {967cta: '02_vqe_convergence', location: sectionTutorials968}969},970{971label: 'VQE on Aer simulator with noise',972url: `${tutorialsBaseUrl}/algorithms/03_vqe_simulation_with_noise.html`,973segment: {974cta: '03_vqe_simulation_with_noise', location: sectionTutorials975}976},977{978label: 'Advanced VQE usage',979url: `${tutorialsBaseUrl}/tutorials/algorithms/04_vqe_advanced.html`,980segment: {981cta: '04_vqe_advanced', location: sectionTutorials982}983},984{985label: 'Quantum Approximate Optimization Algorithm',986url: `${tutorialsBaseUrl}/algorithms/05_qaoa.html`,987segment: {988cta: '05_qaoa', location: sectionTutorials989}990},991{992label: 'Grover’s Algorithm and Amplitude Amplification',993url: `${tutorialsBaseUrl}/algorithms/06_grover.html`,994segment: {995cta: '06_grover', location: sectionTutorials996}997},998{999label: 'Grover’s algorithm examples',1000url: `${tutorialsBaseUrl}/algorithms/07_grover_examples.html`,1001segment: {1002cta: '07_grover_examples', location: sectionTutorials1003}1004},1005{1006label: 'Shor’s algorithms',1007url: `${tutorialsBaseUrl}/algorithms/08_factorizers.html`,1008segment: {1009cta: '08_factorizers', location: sectionTutorials1010}1011},1012{1013label: 'Iterative Quantum Phase Estimation Algorithm',1014url: `${tutorialsBaseUrl}/algorithms/09_IQPE.html`,1015segment: {1016cta: '09_IQPE', location: sectionTutorials1017}1018},1019{1020label: 'Algorithms Tutorials',1021url: `${tutorialsBaseUrl}/algorithms/index.html`,1022segment: {1023cta: 'algorithms_tutorials', location: sectionTutorials1024}1025}1026]1027}10281029const OPERATORS: MegaDropdownMenuGroup = {1030title: {1031label: 'Operators',1032url: 'https://qiskit.org/documentation/tutorials.html#operators',1033segment: {1034cta: wholeSection, location: sectionTutorials1035}1036},1037content: [1038{1039label: 'Operator Flow',1040url: `${tutorialsBaseUrl}/operators/01_operator_flow.html`,1041segment: {1042cta: '01_operator_flow', location: sectionTutorials1043}1044},1045{1046label: 'Qiskit Gradient Framework',1047url: `${tutorialsBaseUrl}/operators/02_gradients_framework.html`,1048segment: {1049cta: '02_gradients_framework', location: sectionTutorials1050}1051},1052{1053label: 'Operators Tutorials',1054url: `${tutorialsBaseUrl}/operators/index.html`,1055segment: {1056cta: 'operators_tutorials', location: sectionTutorials1057}1058}1059]1060}10611062const SAMPLE_ALGORITHMS_IN_QISKIT: MegaDropdownMenuGroup = {1063title: {1064label: 'Sample Algorithms in Qiskit',1065url: 'https://qiskit.org/documentation/tutorials.html#operators',1066segment: {1067cta: wholeSection, location: sectionTutorials1068}1069},1070content: [1071{1072label: 'Iterative Quantum Phase Estimation Algorithm',1073url: `${tutorialsBaseUrl}/textbook/01_IQPE.html`,1074segment: {1075cta: '01_IQPE', location: sectionTutorials1076}1077},1078{1079label: 'Textbook algorithms in Qiskit',1080url: `${tutorialsBaseUrl}/textbook/index.html`,1081segment: {1082cta: 'textbook-algorithms-in-qiskit', location: sectionTutorials1083}1084}1085]1086}10871088const SUMMER_SCHOOL_2020: MegaDropdownMenuGroup = {1089title: {1090label: 'Summer school 2020',1091url: 'https://learn.qiskit.org/summer-school/2020',1092segment: {1093cta: wholeSection, location: sectionSummerSchool1094}1095},1096content: [1097{1098label: 'Qubits and Quantum States, Quantum Circuits, Measurements',1099url: `${pathSummerSchool}/2020/qubits-states-circuits-measurements`,1100segment: {1101cta: 'qubits-states-circuits-measurements', location: sectionSummerSchool1102}1103},1104{1105label: 'Writing and Running Quantum Programs',1106url: `${pathSummerSchool}/2020/writing-running-programs`,1107segment: {1108cta: 'writing-running-programs', location: sectionSummerSchool1109}1110},1111{1112label: 'Shor\'s Algorithm I Quantum Fourier Transform, Quantum Phase Estimation',1113url: `${pathSummerSchool}/2020/shors-algorithm-i-fourier-transform-phase-estimation`,1114segment: {1115cta: 'shors-algorithm-i-fourier-transform-phase-estimation', location: sectionSummerSchool1116}1117},1118{1119label: 'Shor\'s Algorithm II From Factoring to Period-Finding, Writing the Quantum Program',1120url: `${pathSummerSchool}/2020/shors-algorithm-ii-from-factoring-to-period-finding-writing-program`,1121segment: {1122cta: 'shors-algorithm-ii-from-factoring-to-period-finding-writing-program', location: sectionSummerSchool1123}1124},1125{1126label: 'Quantum Error Correction using Repetition Codes',1127url: `${pathSummerSchool}/2020/error-correction-using-repetition-codes`,1128segment: {1129cta: 'error-correction-using-repetition-codes', location: sectionSummerSchool1130}1131},1132{1133label: 'Superconducting Qubits I Quantizing a Harmonic Oscillator, Josephson Junctions',1134url: `${pathSummerSchool}/2020/superconducting-qubits-i-quantizingharmonic-oscillator-josephson-junctions`,1135segment: {1136cta: 'superconducting-qubits-i-quantizingharmonic-oscillator-josephson-junctions', location: sectionSummerSchool1137}1138},1139{1140label: 'Superconducting Qubits II Circuit Quantum Electrodynamics, Readout and Calibration Methods',1141url: `${pathSummerSchool}/2020/superconducting-qubits-ii-circuit-electrodynamics-readout-calibration-methods`,1142segment: {1143cta: 'superconducting-qubits-ii-circuit-electrodynamics-readout-calibration-methods', location: sectionSummerSchool1144}1145},1146{1147label: 'Quantum Chemistry I Obtaining the Qubit Hamiltonian for H2 and LiH',1148url: `${pathSummerSchool}/2020/chemistry-i-obtaining-qubit-hamiltonian-h2-lih`,1149segment: {1150cta: 'chemistry-i-obtaining-qubit-hamiltonian-h2-lih', location: sectionSummerSchool1151}1152},1153{1154label: 'Quantum Chemistry II Finding the Ground States of H2 and LiH',1155url: `${pathSummerSchool}/2020/chemistry-ii-finding-ground-states-h2-lih`,1156segment: {1157cta: 'chemistry-ii-finding-ground-states-h2-lih', location: sectionSummerSchool1158}1159},1160{1161label: 'Careers in Quantum Computing',1162url: `${pathSummerSchool}/2020/careers-in-computing`,1163segment: {1164cta: 'careers-in-computing', location: sectionSummerSchool1165}1166}1167]1168}11691170const SUMMER_SCHOOL_2021: MegaDropdownMenuGroup = {1171title: {1172label: 'Summer school 2021',1173url: 'https://learn.qiskit.org/summer-school/2021',1174segment: {1175cta: wholeSection, location: sectionSummerSchool1176}1177},1178content: [1179{1180label: 'Vector Spaces, Tensor Products, and Qubits',1181url: `${pathSummerSchool}/2021/lec1-1-vector-spaces-tensor-products-qubits`,1182segment: {1183cta: 'lec1-1-vector-spaces-tensor-products-qubits', location: sectionSummerSchool1184}1185},1186{1187label: 'Introduction to Quantum Circuits',1188url: `${pathSummerSchool}/2021/lec1-2-introduction-quantum-circuits`,1189segment: {1190cta: 'lec1-2-introduction-quantum-circuits', location: sectionSummerSchool1191}1192},1193{1194label: 'Simple Quantum Algorithms I',1195url: `${pathSummerSchool}/2021/lec2-1-simple-quantum-algorithms-i`,1196segment: {1197cta: 'lec2-1-simple-quantum-algorithms-i', location: sectionSummerSchool1198}1199},1200{1201label: 'Simple Quantum Algorithms II',1202url: `${pathSummerSchool}/2021/lec2-2-simple-quantum-algorithms-ii`,1203segment: {1204cta: 'lec2-2-simple-quantum-algorithms-ii', location: sectionSummerSchool1205}1206},1207{1208label: 'Noise in Quantum Computers pt 1',1209url: `${pathSummerSchool}/2021/lec3-1-noise-quantum-computers-1`,1210segment: {1211cta: 'lec3-1-noise-quantum-computers-1', location: sectionSummerSchool1212}1213},1214{1215label: 'Noise in Quantum Computers pt 2',1216url: `${pathSummerSchool}/2021/lec3-2-noise-quantum-computers-pt-2`,1217segment: {1218cta: 'lec3-2-noise-quantum-computers-pt-2', location: sectionSummerSchool1219}1220},1221{1222label: 'Lab 1',1223url: `${pathSummerSchool}/2021/lab1-quantum-computing-algorithm-operations`,1224segment: {1225cta: 'lab1-quantum-computing-algorithm-operations', location: sectionSummerSchool1226}1227},1228{1229label: 'Introduction to Classical Machine Learning',1230url: `${pathSummerSchool}/2021/lec4-1-introduction-classical-machine-learning`,1231segment: {1232cta: 'lec4-1-introduction-classical-machine-learning', location: sectionSummerSchool1233}1234},1235{1236label: 'Advanced Classical Machine Learning',1237url: `${pathSummerSchool}/2021/lec4-2-advanced-classical-machine-learning`,1238segment: {1239cta: 'lec4-2-advanced-classical-machine-learning', location: sectionSummerSchool1240}1241},1242{1243label: 'Building a Quantum Classifier',1244url: `${pathSummerSchool}/2021/lec5-1-building-quantum-classifier`,1245segment: {1246cta: 'lec5-1-building-quantum-classifier', location: sectionSummerSchool1247}1248},1249{1250label: 'Introduction to the Quantum Approximate Optimization Algorithm and Applications',1251url: `${pathSummerSchool}/2021/lec5-2-introduction-quantum-approximate-optimization-algorithm-applications`,1252segment: {1253cta: 'lec5-2-introduction-quantum-approximate-optimization-algorithm-applications', location: sectionSummerSchool1254}1255},1256{1257label: 'Lab 2',1258url: `${pathSummerSchool}/2021/lab2-variational-algorithms`,1259segment: {1260cta: 'lab2-variational-algorithms', location: sectionSummerSchool1261}1262},1263{1264label: 'From Variational Classifiers to Linear Classifiers',1265url: `${pathSummerSchool}/2021/lec6-1-from-variational-classifiers-linear-classifiers`,1266segment: {1267cta: 'lec6-1-from-variational-classifiers-linear-classifiers', location: sectionSummerSchool1268}1269},1270{1271label: 'Quantum Feature Spaces and Kernels',1272url: `${pathSummerSchool}/2021/lec6-2-quantum-feature-spaces-kernels`,1273segment: {1274cta: 'lec6-2-quantum-feature-spaces-kernels', location: sectionSummerSchool1275}1276},1277{1278label: 'Quantum Kernels in Practice',1279url: `${pathSummerSchool}/2021/lec7-1-quantum-kernels-practice`,1280segment: {1281cta: 'lec7-1-quantum-kernels-practice', location: sectionSummerSchool1282}1283},1284{1285label: 'Lab 3',1286url: `${pathSummerSchool}/2021/lab3-introduction-quantum-kernels-support-vector-machines`,1287segment: {1288cta: 'lab3-introduction-quantum-kernels-support-vector-machines', location: sectionSummerSchool1289}1290},1291{1292label: 'Introduction and Applications of Quantum Models',1293url: `${pathSummerSchool}/2021/lec8-1-introduction-applications-quantum-models`,1294segment: {1295cta: 'lec8-1-introduction-applications-quantum-models', location: sectionSummerSchool1296}1297},1298{1299label: 'Barren Plateaus, Trainability Issues, and How to Avoid Them',1300url: `${pathSummerSchool}/2021/lec8-2-barren-plateaus-trainability-issues-how-avoid-them`,1301segment: {1302cta: 'lec8-2-barren-plateaus-trainability-issues-how-avoid-them', location: sectionSummerSchool1303}1304},1305{1306label: 'Lab 4',1307url: `${pathSummerSchool}/2021/lab4-introduction-training-quantum-circuits`,1308segment: {1309cta: 'lab4-introduction-training-quantum-circuits', location: sectionSummerSchool1310}1311},1312{1313label: 'Introduction to Quantum Hardware',1314url: `${pathSummerSchool}/2021/lec9-1-introduction-quantum-hardware`,1315segment: {1316cta: 'lec9-1-introduction-quantum-hardware', location: sectionSummerSchool1317}1318},1319{1320label: 'Hardware Efficient Ansatze for Quantum Machine Learning',1321url: `${pathSummerSchool}/2021/lec9-2-hardware-efficient-ansatze-quantum-machine-learning`,1322segment: {1323cta: 'lec9-2-hardware-efficient-ansatze-quantum-machine-learning', location: sectionSummerSchool1324}1325},1326{1327label: 'Lab 5',1328url: `${pathSummerSchool}/2021/lab5-introduction-hardware-efficient-ansatze-quantum-machine-learning`,1329segment: {1330cta: 'lab5-introduction-hardware-efficient-ansatze-quantum-machine-learning', location: sectionSummerSchool1331}1332},1333{1334label: 'Advanced QML Algorithms',1335url: `${pathSummerSchool}/2021/lec10-1-advanced-qml-algorithms`,1336segment: {1337cta: 'lec10-1-advanced-qml-algorithms', location: sectionSummerSchool1338}1339},1340{1341label: 'The Capacity and Power of Quantum Machine Learning Models & the Future of Quantum Machine Learning',1342url: `${pathSummerSchool}/2021/lec10-2-the-capacity-power-quantum-machine-learning-models-future-quantum-machine-learning`,1343segment: {1344cta: 'lec10-2-the-capacity-power-quantum-machine-learning-models-future-quantum-machine-learning', location: sectionSummerSchool1345}1346}1347]1348}13491350const SUMMER_SCHOOL_2022: MegaDropdownMenuGroup = {1351title: {1352label: 'Summer school 2022',1353url: 'https://learn.qiskit.org/summer-school/2022',1354segment: {1355cta: wholeSection, location: sectionSummerSchool1356}1357},1358content: [1359{1360label: 'History of Quantum Computing and Motivation for Quantum Simulation',1361url: `${pathSummerSchool}/2022/history-quantum-computing-motivation-quantum-simulation`,1362segment: {1363cta: 'history-quantum-computing-motivation-quantum-simulation', location: sectionSummerSchool1364}1365},1366{1367label: 'Introduction to Linear Algebra, Prerequisite Mathematics, and Circuit Composition',1368url: `${pathSummerSchool}/2022/introduction-linear-algebra-prerequisite-mathematics-circuit-composition`,1369segment: {1370cta: 'introduction-linear-algebra-prerequisite-mathematics-circuit-composition', location: sectionSummerSchool1371}1372},1373{1374label: 'Lab 1',1375url: `${pathSummerSchool}/2022/lab-1`,1376segment: {1377cta: 'lab-1', location: sectionSummerSchool1378}1379},1380{1381label: 'Hamiltonian Time Evolution',1382url: `${pathSummerSchool}/2022/hamiltonian-time-evolution`,1383segment: {1384cta: 'hamiltonian-time-evolution', location: sectionSummerSchool1385}1386},1387{1388label: 'Simulation Problems',1389url: `${pathSummerSchool}/2022/simulation-problems`,1390segment: {1391cta: 'simulation-problems', location: sectionSummerSchool1392}1393},1394{1395label: 'Lab 2',1396url: `${pathSummerSchool}/2022/lab-2`,1397segment: {1398cta: 'lab-2', location: sectionSummerSchool1399}1400},1401{1402label: 'Noisy Real Hardware, Noise in Quantum Computers',1403url: `${pathSummerSchool}/2022/noisy-real-hardware-noise-quantum-computers`,1404segment: {1405cta: 'noisy-real-hardware-noise-quantum-computers', location: sectionSummerSchool1406}1407},1408{1409label: 'Broad Overview of Quantum Chemistry Simulation and Why it is a Challenge',1410url: `${pathSummerSchool}/2022/broad-overview-quantum-chemistry-simulation-why-is-challenge`,1411segment: {1412cta: 'broad-overview-quantum-chemistry-simulation-why-is-challenge', location: sectionSummerSchool1413}1414},1415{1416label: 'Lab 3',1417url: `${pathSummerSchool}/2022/lab-3`,1418segment: {1419cta: 'lab-3', location: sectionSummerSchool1420}1421},1422{1423label: 'Methods for Quantum Simulation',1424url: `${pathSummerSchool}/2022/methods-quantum-simulation`,1425segment: {1426cta: 'methods-quantum-simulation', location: sectionSummerSchool1427}1428},1429{1430label: 'Quantum Static Simulation',1431url: `${pathSummerSchool}/2022/quantum-static-simulation`,1432segment: {1433cta: 'quantum-static-simulation', location: sectionSummerSchool1434}1435},1436{1437label: 'Lab 4',1438url: `${pathSummerSchool}/2022/lab-4`,1439segment: {1440cta: 'lab-4', location: sectionSummerSchool1441}1442},1443{1444label: 'Quantum Dynamics',1445url: `${pathSummerSchool}/2022/quantum-dynamics`,1446segment: {1447cta: 'quantum-dynamics', location: sectionSummerSchool1448}1449}1450]1451}14521453type MegaDropdownMenuSection = {1454title: string,1455content: MegaDropdownMenuGroup[]1456}14571458type MegaDropdownMenuContent = MegaDropdownMenuSection[]14591460const COURSES_SECTION: MegaDropdownMenuSection = {1461title: 'Courses',1462content: [1463BASICS_COURSE,1464INTRODUCTION_COURSE,1465QML_COURSE1466]1467}14681469const CHAPTERS_SECTION: MegaDropdownMenuSection = {1470title: 'Chapters',1471content: [1472PREREQUISITES,1473QUANTUM_STATES_AND_QUBITS,1474MULTIPLE_QUBITS_AND_ENTANGLEMENT,1475QUANTUM_PROTOCOLS_AND_ALGORITHMS,1476INVESTIGATING_Q_HW_USING_MICROWAVE_PULSES,1477QUANTUM_ALGORITHMS_FOR_APPS,1478INVESTIGATING_Q_HW_USING_Q_CIRCUITS,1479QUANTUM_COMPUTING_LABS,1480GAMES_AND_DEMOS,1481PROBLEM_SETS1482]1483}14841485const TUTORIALS_SECTION: MegaDropdownMenuSection = {1486title: 'Tutorials',1487content: [1488QUANTUM_CIRCUITS,1489ADVANCED_CIRCUITS,1490CLASSICAL_SIMULATORS,1491ALGORITHMS,1492OPERATORS,1493SAMPLE_ALGORITHMS_IN_QISKIT1494]1495}14961497const SUMMER_SCHOOL_SECTION: MegaDropdownMenuSection = {1498title: 'Summer schools',1499content: [1500SUMMER_SCHOOL_2020,1501SUMMER_SCHOOL_2021,1502SUMMER_SCHOOL_20221503]1504}15051506const LEARN_MEGA_MENU: MegaDropdownMenuContent = [1507COURSES_SECTION,1508CHAPTERS_SECTION,1509TUTORIALS_SECTION,1510SUMMER_SCHOOL_SECTION1511]15121513export {1514LEARN_MEGA_MENU1515}151615171518