first form logic