コード例 #1
0
 private function disparaRegla(regla $r, bh $bh)
 {
     $dispara = TRUE;
     foreach ($r->getAntecedente() as $literal) {
         $dispara = $dispara && $this->disparaLiteral($literal, $bh);
     }
     return $dispara;
 }
コード例 #2
0
ファイル: index.php プロジェクト: rolion/SistemaExpertoBeta
$l1->setOprel(literal::$MAYOR_IGUAL);
$h6 = new hecho();
$h6->setVariable('p');
$h6->setValor(1);
$h6->setEsNumerico(TRUE);
$r2 = new regla();
$r2->addLiteral($l1);
$r2->setConsecuente($h6);
$bwx->setReglas($r2);
$l2 = new literal();
$l2->setHecho($h6);
$l2->setOprel(literal::$IGUAL);
$l3 = new literal();
$l3->setHecho($h4);
$l3->setOprel(literal::$IGUAL);
$r3 = new regla();
$r3->addLiteral($l2);
$r3->addLiteral($l3);
$h7 = new hecho();
$h7->setVariable('m');
$h7->setValor('oscar');
$h7->setEsNumerico(FALSE);
$r3->setConsecuente($h7);
$bwx->setReglas($r3);
$meta = new hecho();
$meta->setVariable('m');
$literal = new literal();
$literal->setHecho($meta);
$literal->setOprel(literal::$IGUAL);
$bwx->bwcr($meta, $bh);
var_dump($bh);