Пример #1
0
 def test_basic(self):
     natural = "Let $n$"
     lean = "intros n A1"
     context = Context()
     context.current_goal = ForAllNatIneqThen(
         "n", Inequality.from_natural(r"$n \leq N$"),
         r"|b_n - l| < \epsilon$")
     test_bijective(self, LetNInequality, natural, lean, context)
Пример #2
0
 def test_fail(self):
     context = Context()
     natural = r"Let $\epsilon$"
     lean = "intros ε A1"
     context.current_goal = ForAll(
         "n", Inequality(Identifier("a"), InequalityType.GT,
                         Identifier("b")))
     self.assertIsNone(LetGoalLimit.from_natural(natural, context))
     self.assertIsNone(LetGoalLimit.from_lean(lean, context))
Пример #3
0
 def test_basic(self):
     context = Context()
     RealValuedSequences.from_natural("$a_n, b_n, c_n$ are real-valued",
                                      context)
     RealDeclaration.from_natural(r"$l \in \mathbb{R}$", context)
     SequenceLimit.from_natural(r"$a_n \rightarrow l$", context)
     context.current_goal = SequenceLimit.from_natural(
         r"$b_n \rightarrow l$", context)
     LetGoalLimit.from_natural(r"Let $\epsilon$", context)
     natural = r"Let's choose $N_a$ such that H1 uses $\epsilon$"
     lean = r"cases H1 ε A1 with N_a A2"
     test_bijective(self, ChooseNEpsilonLimit, natural, lean, context)
Пример #4
0
 def test_basic(self):
     context = Context()
     natural = r"Let $\epsilon$"
     lean = "intros ε A1"
     context.current_goal = SequenceLimit("b", "l")
     test_bijective(self, LetGoalLimit, natural, lean, context)