Using Symbolic Feasibility Tests during Design Space Exploration of Heterogeneous Multi-Processor Systems