cognitive logic