sig
  type interfid = Input of int | Output
  val get_interf_character :
    Protein.Abstract.LID.interfid -> Protein.Abstract.interf_character
  type initstate = unit
  and state = unit
  and lidfunc = LIDNot | LIDAnd | LIDOr | LIDXor
  and config = { num_inputs : int; lidfunc : Protein.Abstract.LID.lidfunc; } 
  and cons = Protein.Abstract.LID.initstate * Protein.Abstract.LID.config
  val num_lbprojs : int
  val num_sbprojs : int
end