用途:Aglais XQVM 是硬件无关的量子计算虚拟机,用 Rust 编写,为面向量子退火机的二元优化问题(QUBO/Ising 形式)提供统一的字节码中间表示,定位类似量子计算领域的 LLVM。
主要能力:虚拟机基于栈,带 256 槽寄存器文件,支持 no_std + alloc 以便部署到 WASM/裸机。包含四个 crate:aglais-xqvm-bytecode(操作码表、指令类型、构建器、二进制编解码、流读取器)、aglais-xqvm-asm(xqasm 文本汇编器)、aglais-xqvm-disasm(xqdism 反汇编器)、aglais-xqvm-vm(xqvm 字节码解释器)。指令集共 76 条,涵盖栈、寄存器、算术、比较、控制流、迭代、向量及 QUBO/Ising 操作(XQMX_NEW、XQMX_SET_Q、XQMX_SET_H、XQMX_EVAL、XQMX_SAMPLE)。操作数为大端序,二进制格式为无文件头的裸指令流。
使用方式:安装 Rust 稳定版后,可克隆 https://github.com/QuipNetwork/xq-rs 并 cargo build --release,生成 xqasm、xqdism、xqvm 三个二进制。典型流程为 xqasm problem.xqasm -o problem.xqbc && xqdism problem.xqbc && xqvm problem.xqbc。也可作为库依赖引入,通过 BytecodeBuilder 构建程序、StreamReader 解码、Vm 加载并运行字节码。
适用场景:QUBO/Ising 模型构建与能量评估、TSP 等组合优化问题的 QUBO 编码、WASM/裸机环境下的字节码解码。
限制:aglais-xqvm-vm 需要 std,不适用于裸机;no_std 环境需关闭默认特性并启用 alloc。许可证为 AGPL-3.0-or-later,嵌入专有网络服务需按 AGPL 披露源码。其余细节暂未提供。