コード例 #1
0
def calculate_average_probability_execution_time(semantics, baba_framework,
                                                 number_of_trials):
    start_time = time.process_time()
    for i in range(number_of_trials):
        Semantics.compute_semantic_probability(semantics, baba_framework)

    return 100 * (time.process_time() - start_time)
コード例 #2
0
 def test_integration_framework_with_one_conditional_random_variable(self):
     parser = Parser.BABAProgramParser(
         filename='../PythonSemantics/Parsing/BABA_program_5')
     baba = parser.parse()
     lang_prob = Semantics.compute_semantic_probability(
         Semantics.GROUNDED, baba)
     self.assertAlmostEqual(0.2, lang_prob[ExampleFrameworks.a.symbol])
コード例 #3
0
 def test_integration_framework_with_conditional_random_variables(self):
     parser = Parser.BABAProgramParser(
         filename='../PythonSemantics/Parsing/BABA_program_4')
     baba = parser.parse()
     lang_prob = Semantics.compute_semantic_probability(
         Semantics.GROUNDED, baba)
     self.assertAlmostEqual(0.775, lang_prob[ExampleFrameworks.b.symbol])
     self.assertAlmostEqual(0.6625, lang_prob[ExampleFrameworks.c.symbol])
     self.assertAlmostEqual(0.45, lang_prob['o'])
     self.assertAlmostEqual(0.75, lang_prob['p'])
     self.assertAlmostEqual(1.0, lang_prob[ExampleFrameworks.d.symbol])
     self.assertAlmostEqual(1.0, lang_prob[ExampleFrameworks.e.symbol])
コード例 #4
0
 def test_compute_grounded_probability(self):
     baba = ExampleFrameworks.r_framework()
     grounded_probabilities = Semantics.compute_semantic_probability(
         Semantics.GROUNDED, baba)
     self.assertEqual(0.64,
                      grounded_probabilities[ExampleFrameworks.a.symbol])
     self.assertEqual(0.36,
                      grounded_probabilities[ExampleFrameworks._a.symbol])
     self.assertEqual(0.6,
                      grounded_probabilities[ExampleFrameworks.b.symbol])
     self.assertEqual(0.4,
                      grounded_probabilities[ExampleFrameworks._b.symbol])
     self.assertEqual(1.0,
                      grounded_probabilities[ExampleFrameworks.c.symbol])
     self.assertEqual(0.0,
                      grounded_probabilities[ExampleFrameworks._c.symbol])
     self.assertEqual(0.64,
                      grounded_probabilities[ExampleFrameworks.j.symbol])
コード例 #5
0
 def test_compute_ideal_probability(self):
     ideal_probabilities = Semantics.compute_semantic_probability(
         Semantics.IDEAL, ExampleFrameworks.r_framework())
     self.assertAlmostEqual(0.64,
                            ideal_probabilities[ExampleFrameworks.a.symbol])
     self.assertAlmostEqual(
         0.36, ideal_probabilities[ExampleFrameworks._a.symbol])
     self.assertAlmostEqual(0.60,
                            ideal_probabilities[ExampleFrameworks.b.symbol])
     self.assertAlmostEqual(
         0.40, ideal_probabilities[ExampleFrameworks._b.symbol])
     self.assertAlmostEqual(1.0,
                            ideal_probabilities[ExampleFrameworks.c.symbol])
     self.assertAlmostEqual(
         0.0, ideal_probabilities[ExampleFrameworks._c.symbol])
     self.assertAlmostEqual(0.64,
                            ideal_probabilities[ExampleFrameworks.j.symbol])
     self.assertAlmostEqual(0.6,
                            ideal_probabilities[ExampleFrameworks.s.symbol])
     self.assertAlmostEqual(0.4,
                            ideal_probabilities[ExampleFrameworks.t.symbol])
コード例 #6
0
 def test_integration_cow_framework(self):
     baba = Parser.BABAProgramParser(
         filename='../PythonSemantics/Parsing/BABA_cow_program').parse()
     lang_prob = Semantics.compute_semantic_probability(
         Semantics.GROUNDED, baba)
     self.assertAlmostEqual(0.72, lang_prob[ExampleFrameworks.HP.symbol])