def test_unquote(self):
     self.run_legacy_test( '${e}',
             [[v.sym('quote'), [v.sym('unquote'), v.sym('e')]]],
             'unquote')
     self.run_legacy_test( '$e',
             [[v.sym('quote'), [v.sym('unquote'), v.sym('e')]]],
             'unquote')
     self.run_legacy_test( '${e + 1}',
             [[v.sym('quote'), [v.sym('unquote'), [v.sym('add'), v.sym('e'), v.num(1)]]]],
             'unquote')
     self.run_legacy_test( '$e + 1',
             [[v.sym('add'), [v.sym('quote'), [v.sym('unquote'), v.sym('e')]], v.num(1)]],
             'unquote')
示例#2
0
 def test_clear(self):
     inst1 = {
         'instruction': 'predict',
         'expression': ['add', v.num(1), v.num(2)],
     }
     o1 = self.sivm.execute_instruction(inst1)
     inst2 = {
         'instruction': 'clear',
     }
     self.sivm.execute_instruction(inst2)
     inst = {
         'instruction': 'report',
         'directive_id': o1['directive_id'],
     }
     try:
         self.sivm.execute_instruction(inst)
     except VentureException as e:
         self.assertEquals(e.exception, 'invalid_argument')
示例#3
0
 def test_infer(self):
     inst = {
         'instruction':
         'infer',
         'expression': [
             v.sym("resimulation_mh"),
             v.sym("default"),
             v.sym("one"),
             v.num(2)
         ]
     }
     self.sivm.execute_instruction(inst)
def testBasicAnnotation():
    sivm = get_ripl().sivm
    expr = v.app(v.sym("add"), v.num(1), v.sym("foo"))
    err.assert_sivm_annotation_succeeds(sivm.assume, v.sym("x"), expr)
def points_at(inferrer, i):
    import venture.value.dicts as val
    return [(x_to_pixels(i), y_to_pixels(y["value"]))
            for y in inferrer.engine.sample_all(
                [val.sym("position"), val.num(i)])]
示例#6
0
def makeObserves(ripl, num_points):
    data = [
        v.list([v.real(-2.4121470179012272),
                v.real(-4.0898807104175177)]),
        v.list([v.real(-3.5742473969392483),
                v.real(16.047761595206289)]),
        v.list([v.num(-0.44139814963230056),
                v.num(-4.366209321011203)]),
        v.list([v.num(-0.23258164982263235),
                v.num(-5.687017265835844)]),
        v.list([v.num(0.035565573263568961),
                v.num(-3.337136380872824)]),
        v.list([v.num(-4.3443008510924654),
                v.num(17.827515632039944)]),
        v.list([v.num(-0.19026889153157978),
                v.num(-3.6065264508558972)]),
        v.list([v.num(-4.8535236723040498),
                v.num(17.098870618931819)]),
        v.list([v.num(-1.1235421108040797),
                v.num(-5.261098458581845)]),
        v.list([v.num(1.1794444234381136),
                v.num(-3.630199721409284)])
    ]
    for i in range(num_points):
        ripl.observe('(get_datapoint %d)' % i, data[i])