1. A computer implemented method of generating an instruction set for an architecture, comprising: accessing a hierarchical description of an architecture of node groups, wherein each node in a node group is associated with at least one operation; selecting a leaf node group within the architecture of node groups; resolving path-split ambiguities for a node associated with a plurality of parent nodes associated with a path split from a path within the architecture from the node to the selected leaf node group into a plurality of paths each associated with a different parent node of the plurality of parent nodes by assigning a unique encoding for each operation associated with a parent node of the plurality of parent nodes above the path split within the architecture based on a sum of encoding widths associated with operations above the parent node within the architecture of node groups, each encoded operation associated with an encoding width; propagating the encoding widths associated with the encoded operations to the selected leaf node group; and generating an instruction set associated with the leaf node group for each unique path from a root node group to the leaf node group, each instruction set based on the propagated encoding widths associated with a unique path.