def test_nested_genpvars_twice_normalized(self):
     data = (
         '(f (l (v type GEN%PVAR%123) (l (v type GEN%PVAR%333) (f (v type '
         'GEN%PVAR%333) (v type GEN%PVAR%123)))) (l (v type GEN%PVAR%999) (v'
         ' type GEN%PVAR%999)))')
     expected = (
         '(f (l (v type GEN%PVAR%0) (l (v type GEN%PVAR%1) (f (v type '
         'GEN%PVAR%1) (v type GEN%PVAR%0)))) (l (v type GEN%PVAR%0) (v '
         'type GEN%PVAR%0)))')
     self.assertEqual(
         normalization_lib.normalize_genpvars(
             normalization_lib.normalize_genpvars(data)), expected)
 def test_two_genpvars(self):
     data = (
         '(f (l (v type GEN%PVAR%123) (v type GEN%PVAR%123)) (l (v type '
         'GEN%PVAR%123) (v type GEN%PVAR%123)))')
     expected = (
         '(f (l (v type GEN%PVAR%0) (v type GEN%PVAR%0)) (l (v type '
         'GEN%PVAR%0) (v type GEN%PVAR%0)))')
     self.assertEqual(normalization_lib.normalize_genpvars(data), expected)
 def test_single_genpvar(self):
     theorem = proof_assistant_pb2.Theorem(
         conclusion='(l (v type GEN%PVAR%123) (v type GEN%PVAR%123))')
     expected = proof_assistant_pb2.Theorem(
         conclusion='(l (v type GEN%PVAR%0) (v type GEN%PVAR%0))')
     self.assertEqual(
         normalization_lib.normalize_genpvars(theorem.conclusion),
         expected.conclusion)
     self.assertEqual(normalization_lib.normalize(theorem), expected)
 def test_free_genpvars(self):
     data = '(f (l (v type GEN%PVAR%123) otherexpr) (v type GEN%PVAR%9))'
     expected = '(f (l (v type GEN%PVAR%0) otherexpr) (v type GEN%PVAR%9))'
     self.assertEqual(normalization_lib.normalize_genpvars(data), expected)