Пример #1
0
        static void Main(string[] args)
        {
            var p = new MuCalculusParser();
            p.Setup();
            bool b = p.Parse(new StringReader("nu X.((mu Y . [b]Y) && nu Z.((<b> X) && (<a>(Z && <a> X))))\r\n"));

            string ltsPath = args[0];
            string formulasPath = args[1];
            Log("LTS: {0}", ltsPath);
            var parser = new MuCalculusParser();
            parser.Setup();
            var fileStream = new FileStream(formulasPath, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
            bool parseResult = parser.Parse(new StreamReader(fileStream, Encoding.Default));
            fileStream.Close();
            if (!parseResult)
                Log("Failed to parse!");

            LTS lts = LTS.Parse(ltsPath);

            foreach (MuFormula f in parser.formulas) {
                Log("----------------------------------");
                OutputResult(f, lts);
            }
            Log();
            Log();
            logWriter.Flush();

            logWriter.Close();
            Console.ReadKey();
        }