system synthesis