A formal approach to the scheduling problem in high level synthesis | Synapse