Mạch lượng tử, trong lý thuyết thông tin lượng tử, là mô hình tính toán lượng tử trong đó tính toán là một chuỗi các cổng lượng tử, là các phép biến đổi thuận nghịch trên một cơ chế lượng tử tương tự của thanh ghi n bit. Cấu trúc tương tự này được gọi là một thanh ghi n-qubit.
Các cổng logic cơ bản của một máy tính cổ điển, ngoài cổng KHÔNG, không thể đảo ngược. Do đó, ví dụ, đối với cổng AND, người ta không thể phục hồi hai bit đầu vào từ bit đầu ra; ví dụ, nếu bit đầu ra là 0, chúng ta không thể biết điều này cho dù các bit đầu vào là 0,1 hay 1,0 hay 0,0.
Tuy nhiên, cổng đảo ngược trong máy tính cổ điển được xây dựng dễ dàng cho các chuỗi bit có độ dài bất kỳ; hơn nữa, đây thực sự là mối quan tâm thực tế, vì các cổng không thể đảo ngược phải luôn tăng entropy vật lý. Cổng đảo ngược là một hàm đảo ngược trên dữ liệu n bit trả về dữ liệu n bit, trong đó dữ liệu n bit là một chuỗi các bit x1, x2,..., xn có độ dài n. Tập hợp dữ liệu n bit là không gian {0,1} n, bao gồm 2n chuỗi 0 và 1.
Chính xác hơn: một cổng đảo ngược n-bit là ánh xạ phỏng đoán f từ tập {0,1} n của dữ liệu n-bit vào chính nó. Một ví dụ về cổng đảo ngược f như vậy là ánh xạ áp dụng hoán vị cố định cho các đầu vào của nó. Vì lý do kỹ thuật thực tế, người ta thường chỉ nghiên cứu các cổng cho các giá trị nhỏ của n, ví dụ: n = 1, n = 2 hoặc n = 3. Những cổng này có thể được mô tả dễ dàng bằng bảng.