Logic thinking