Qubic Roadmap

There are no hard dates yet. The main purpose of the road map is to provide you with an idea of what’s in store and what the scope of the project is.

Note that this is not the final road map by a long shot. Things may still change along the way, and there are lots of other ideas still laying around. Our focus will be on getting a Proof of Concept (PoC) version out as soon as possible. The items marked as future extension will most likely not be part of this PoC.

Abra

Abra specification

The reference documentation for the Abra language and its standard libraries.

Abra to LLVM compiler

A compiler that can cross-compile Abra code into x86/arm/etc code that can be run directly.

Abra to FPGA compiler

A compiler that can cross-compile a Abra code into Verilog code that can be loaded and run on an FPGA directly.

Abra development environment

Development environment that facilitates programmer-friendly creation of Abra code.

Future extension

Abra libraries

Abra library documentation

The reference documentation for the Abra libraries.

Abra standard library

A library of standard Abra functions.

Abra x86 support library

A library that maps some of the standard Abra functions to more efficient x86 equivalent. These will mostly be low-level functions that can be optimized by using specific x86 instructions.

Future extension

Abra FPGA support library

A library that maps some of the standard Abra functions to more efficient Verilog equivalent. These will mostly be low-level functions that can be optimized by using specific Verilog instructions.

Future extension

Qubic Protocol

Qubic specification

The reference documentation for the Qubic protocol.

Qubic math paper

A whitepaper-like document exploring the mathematical properties of some parts of the Qubic protocol.

Qubic PoC

Non-trivial example use case of the Qubic protocol running on the Tangle.

Q-Tangle

Qubic packager

A packager that packages Abra code into a qubic transaction.

Timestamps

Definition and implementation of reliable timestamps for use in various parts of the Qubic protocol.

Transactions

Definition, documentation and implementation of all Qubic-specific transactions.

Assembly

The parts of the Qubic protocol that handle everything assembly-related. This includes creation and maintenance of assemblies by defining assembly and epoch parameters.

Quorum

The parts of the Qubic protocol that handle everything related to quorums. This includes the oracles committing and revealing results and coming to consensus about the quorum. It also includes the qubic owner validating the quorum result.

Rewards

The parts of the Qubic protocol that handle everything related to rewards. This includes the qubic owner side that determines to pay how much to which oracles. It also includes the oracle side that keeps track of actually being paid.

Resource test

The parts of the Qubic protocol that handle everything related to the resource test phase. This includes defining a Proof of Work qubic that can function as an initial implementation. It also includes the part of the Q-node that runs the resource test, posts the results, and agrees on the weighing factors.

Oracle Machine

Q-tangle

Separate localized tangle optimized to support Qubic protocol. The Q-tangle will only contain the transactions relevant to the Qubic protocol. This part will hook into the Tangle message stream and filter out Qubic transactions.

URI processor

Implementation of URI processor to handle accessing of external data.

Dispatcher

Handles triggering of events and schedules and runs qubics.

Q-Node

An IOTA full node that integrates the ability to run the Qubic protocol.