public override Sentence visitBinarySentence(ComplexSentence s, object arg)
        {
            Sentence result = null;
            if (s.isBiconditionalSentence())
            {
                // Eliminate <=>, replace &alpha; <=> &beta;
                // with (&alpha; => &beta;) & (&beta; => &alpha;)
                Sentence alpha = s.getSimplerSentence(0).accept(this, arg);
                Sentence beta = s.getSimplerSentence(1).accept(this, arg);
                Sentence alphaImpliesBeta = new ComplexSentence(
                        Connective.IMPLICATION, alpha, beta);
                Sentence betaImpliesAlpha = new ComplexSentence(
                        Connective.IMPLICATION, beta, alpha);

                result = new ComplexSentence(Connective.AND, alphaImpliesBeta,
                        betaImpliesAlpha);
            }
            else
            {
                result = base.visitBinarySentence(s, arg);
            }
            return result;
        }