Science of reasoning