Skip to main content
EVA is the BRIK64 composition model. It gives agents and developers three ways to explain how circuit units connect.
CompositionMeaningAgent question
SequentialA runs before B and B uses A’s output.What data flows from A to B?
ConditionalOne branch is selected by a condition.Do all branches return the same kind of result?
ParallelIndependent branches are evaluated separately.Are the branches independent?

Sequential

Sequential composition is the normal pipeline shape.
PC label_hash {
    fn label_hash(prefix, code) {
        let label = MC_40.CONCAT(prefix, code);
        let digest = MC_48.HASH(label);
        return digest;
    }
}
The output of CONCAT feeds HASH.

Conditional

Conditional composition must close every branch.
PC order_gate {
    fn order_gate(amount, limit) {
        if (amount <= 0) {
            return 0;
        }

        if (amount > limit) {
            return 0;
        }

        return 1;
    }
}
Every path returns a value, and the blocked paths are explicit.

Parallel

Use parallel composition only when branches are independent. In PCD examples, represent this as separate values that do not mutate shared state.
PC parallel_summary {
    fn parallel_summary(left, right) {
        let left_len = MC_43.LEN(left);
        let right_len = MC_43.LEN(right);
        let total = MC_00.ADD8(left_len, right_len);
        return total;
    }
}

Authoring Guidance

Do not invent symbolic EVA syntax in executable PCD. Use source structure and topology metadata unless a specific compiler release documents a supported symbolic form.