2026-07-02 기준레벨 3

QASM과 QIR

OpenQASM은 사람이 읽을 수 있는 양자 회로의 '어셈블리어'이고, QIR은 양자와 고전 로직을 함께 담는 LLVM 기반 중간표현입니다 — 2026년 기준 양자 소프트웨어 스택의 두 수렴 표준입니다.

무슨 뜻인가요

양자 프레임워크들 — Qiskit, Cirq, Pytket, Q#, PennyLane, Braket — 은 같은 회로를 서로 다른 방언으로 씁니다.그래서 생태계에는 공통의 문자 언어가 필요합니다.QASM(Quantum Assembly Language)은 사람이 읽을 수 있는 회로 텍스트 포맷, 즉 '양자의 어셈블리어'입니다.하지만 가장 흔한 버전인 OpenQASM 2.0은 실시간 측정 기반 분기(동적 회로)를 표현할 수 없어, 프레임워크마다 독자 확장을 붙였고 포맷이 파편화됐습니다.OpenQASM 3는 고전 제어 흐름을 추가해 이를 고칩니다.QIR(Quantum Intermediate Representation)은 한 단계 더 깊이 들어갑니다: 컴파일러의 중간표현(IR) 아이디어를 적용해 언어 프런트엔드와 하드웨어 백엔드를 분리합니다.LLVM 위에 세워져 고전과 양자 로직을 한 프로그램에 담을 수 있습니다 — 하이브리드 컴퓨팅에 꼭 필요한 다리입니다.Microsoft가 설립한 QIR Alliance가 개발하며, 2026년 기준 NVIDIA·Quantinuum·Rigetti·IQM·ORNL이 채택 중입니다.MLIR은 더 일반화합니다: '방언(dialect)'으로 한 프로그램 안에 고전 제어·양자 회로·펄스 레벨 기술까지 담고, 하드웨어를 향해 단계적으로 낮춥니다(progressive lowering).다만 실제로는 많은 벤더가 아직 JSON 같은 단순 회로 포맷만 받습니다 — 표준 채택은 논문보다 늦습니다.

일상 비유

당신의 양자 프레임워크 — Qiskit, Cirq, Pytket, Q#, PennyLane, Braket, 모두 같은 벨 쌍을 서로 다른 방언으로 씁니다 — 에는 공통의 문자 언어가 필요합니다. QASM이 바로 사람이 읽을 수 있는 '양자의 어셈블리어'입니다. 하지만 가장 흔한 버전인 OpenQASM 2.0은 실시간 if 분기(동적 회로)를 표현할 수 없어, 프레임워크마다 독자 확장을 붙였고 생태계가 파편화됐습니다. OpenQASM 3가 이를 고칩니다. QIR은 한 단계 더 깊이 들어갑니다: 여러 언어와 여러 기계 사이의 번역 허브처럼(LLVM 위에 세워진 컴파일러 중간표현 아이디어), 고전과 양자 로직을 한 프로그램에 함께 담습니다 — 하이브리드 컴퓨팅에 필요한 다리입니다. MLIR은 '방언(dialect)'으로 더 일반화해, 고전 제어·회로·펄스를 한 프로그램에 담아 단계적으로 낮춥니다.
어셈블리(assembly)는 라틴어 assimulare, '긁어모으다'에서 왔습니다 — 기계어 직전의 '조립 언어'죠. QASM은 Quantum + ASM(어셈블리)입니다. IR은 Intermediate Representation(중간표현), 한자로 中間表現 — '언어와 기계 사이의 다리'입니다.

흔한 오해

  • QASM은 회로 텍스트 포맷이지, 사람이 큰 프로그램을 짜는 프로그래밍 언어가 아닙니다 — SDK가 생성합니다.
  • OpenQASM 2.0은 중간측정 기반 제어 흐름을 표현할 수 없습니다 — 생태계를 파편화시킨 실제 한계입니다. 2026년 기준 OpenQASM 3와 QIR이 수렴 표준입니다.
  • 많은 벤더는 여전히 QIR·MLIR이 아니라 단순 회로 포맷(JSON 등)만 받습니다 — 표준 채택은 논문보다 늦습니다.

핵심 정리

  • QASM은 사람이 읽을 수 있는 회로 텍스트 — SDK가 생성하고 교환하는 '양자 어셈블리어'입니다.
  • OpenQASM 3는 고전 제어 흐름을 추가해, 실시간 측정 기반 분기(동적 회로)를 마침내 표준으로 표현할 수 있게 합니다.
  • QIR은 하이브리드 양자+고전 로직을 담는 LLVM 기반 중간표현입니다. QIR Alliance(Microsoft 설립, 2026년 기준 NVIDIA·Quantinuum·Rigetti·IQM·ORNL 채택 중)가 개발합니다.
  • MLIR의 '방언(dialect)'은 고전 제어·양자 회로·펄스가 한 프로그램에 공존하며 하드웨어를 향해 단계적으로 낮아지는 것을 허용합니다.

이해했는지 확인해 보세요

OpenQASM 2.0의 어떤 한계가 양자 소프트웨어 생태계를 벤더별 독자 확장으로 파편화시켰습니까?

  1. A.2큐비트 게이트를 기술할 수 없었다
  2. B.실시간 측정 기반 제어 흐름(동적 회로)을 표현할 수 없었다
  3. C.IBM 하드웨어에서만 실행됐다
  4. D.라이선스 비용이 필요했다
정답 보기

정답: B. 실시간 측정 기반 제어 흐름(동적 회로)을 표현할 수 없었다

이유: OpenQASM 2.0은 회로 중간 측정 결과에 따른 실시간 분기를 표현할 수 없어, 프레임워크마다 독자 확장을 붙였고 포맷이 파편화됐습니다. OpenQASM 3가 고전 제어 흐름을 추가해 이를 고칩니다.

QIR이 하이브리드 양자-고전 컴퓨팅의 다리로 특히 적합한 이유는 무엇입니까?

  1. A.파이썬으로 작성되기 때문
  2. B.회로를 그래픽으로 그려주기 때문
  3. C.LLVM 위에 세워져 고전과 양자 로직을 한 프로그램에 담고, 프런트엔드와 백엔드를 분리하기 때문
  4. D.회로를 최소 게이트 수로 압축하기 때문
정답 보기

정답: C. LLVM 위에 세워져 고전과 양자 로직을 한 프로그램에 담고, 프런트엔드와 백엔드를 분리하기 때문

이유: QIR은 컴파일러 중간표현 아이디어를 양자에 적용한 것입니다: LLVM 기반으로 고전+양자 로직을 함께 표현하고 언어와 하드웨어를 분리합니다 — 하이브리드 컴퓨팅에 필요한 다리입니다.

먼저 알아야 할 개념

OpenQASM 3 spec is stable literature, but adoption landscape (QIR Alliance members, vendor format support, MLIR dialects) evolves; text phrases these as-of-2026.

직접 실습으로 배우기

이 개념은 46레벨 커리큘럼의 일부입니다. 인터랙티브 시뮬레이터, 그리고 답변을 표시 전에 검증하는 튜터 Lumen과 함께 배웁니다. 레벨 1–5는 무료입니다.