logic principles 3586970