Department of Computer Science and Applied Mathematics, The Weizmann Institute of Science, Rehovot, Israel. rhaddad@weizmann.ac.il|Department of Computer Science and Applied Mathematics, The Weizmann Institute of Science, Rehovot, Israel. rhaddad@weizmann.ac.il|Department of Computer Science and Applied Mathematics, The Weizmann Institute of Science, Rehovot, Israel. rhaddad@weizmann.ac.il|Department of Computer Science and Applied Mathematics, The Weizmann Institute of Science, Rehovot, Israel. rhaddad@weizmann.ac.il