/// <inheritdoc/>
        public void TraceInconstructibleTheorem(RankedTheorem rankedTheorem, AnalyticException exception)
        {
            // If logging is allowed, log it with the reference to more detail in the file
            if (_settings.LogFailures)
            {
                Log.Warning("Problem while drawing a ranked theorem. See {path} for more detail.", _settings.FailureFilePath);
            }

            // Open the stream writer for the file
            using var streamWriter = new StreamWriter(_settings.FailureFilePath, append: true);

            // Prepare the formatter
            var rankedTheoremFormatter = new OutputFormatter(rankedTheorem.Configuration.AllObjects);

            // Write initial info
            streamWriter.WriteLine($"Problem while constructing the theorem:\n");

            // Write the configuration
            streamWriter.WriteLine(rankedTheoremFormatter.FormatConfiguration(rankedTheorem.Configuration));

            // Write the theorem
            streamWriter.WriteLine($"\n{rankedTheoremFormatter.FormatTheorem(rankedTheorem.Theorem)}");

            // Write the exception
            streamWriter.WriteLine($"\nException: {exception}");

            // Separator
            streamWriter.WriteLine("--------------------------------------------------\n");
        }
 /// <inheritdoc/>
 public void TraceInconstructibleTheorem(RankedTheorem rankedTheorem, AnalyticException exception)
 {
 }