ILP: thinking visual scenes as differentiable logic programs | Synapse