Formalising the (Sub-)Structural Aspects of SystemVerilog Posted on 2021-03-08idris soc hardware substructural-type-systems dependent-types border-patrol tdd plas