An introduction to symbolic logic