As illustrated by the problem of synthesizability this essentially boils down to a problem of representation on which constraints are added. One intuitive approach is to use the synthesis process of the catalyst or molecule as the machine learning representation. A vector containing the catalyst composition, calcination temperature and time, presence of ion exchange or impregnation, can be used to represent a catalyst. In this way, the synthesizability of the queries is guaranteed, as every proposed recipe is executable. However, this representation does not necessarily ensure an easy mapping to the property of interest, which might require an increased amount of data to model this relation.