Multi-core synthesis and maximum satisfiability applied to optimal sizing of solar photovoltaic systems