|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 1798 (0x706)
Types: TextFile
Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦e24fb53b7⟧
└─⟦this⟧
separate (Fqa_Bundle)
package body Find_Closest_Inf_Rule is
function Premiss return Fact_Queries is
begin
return (Questions.Exist ((Number => Define_As (N))),
Answers.Absent ((Number => Is_Equal (N),
Value => Is_Any,
Erasable => Is_Any)),
Answers.Exist ((Number => Define_As (O) and Is_Less (N),
Value => Is_Any,
Erasable => Is_Any)),
Answers.Absent ((Number => Is_Greater (O) and Is_Less (N),
Value => Is_Any,
Erasable => Is_Any)));
end Premiss;
procedure Action (The_Facts : Fact_Collection) is
The_Answer : Fact_Name renames The_Facts (3);
The_Number : Integer := Slot.Get (Answers.Get (The_Answer, Number));
The_Value : Integer := Slot.Get (Answers.Get (The_Answer, Value));
Is_Erasable : Boolean := Slot.Get (Answers.Get (The_Answer, Erasable));
use Output_Stream;
begin
New_Line (Standard_Output);
New_Line (Standard_Output);
Put_Line ("---------- Find_Closest_Inf_Rule action ----------",
Standard_Output);
New_Line (Standard_Output);
if Is_Erasable then
Answers.Change (The_Answer, Number, Slot.Value (The_Number + 1));
Answers.Change (The_Answer, Value,
Slot.Value (The_Value * (The_Number + 1)));
else
Answers.Add ((Slot.Value (The_Number + 1),
Slot.Value (The_Value * (The_Number + 1)),
Slot.Value (True)));
end if;
end Action;
end Find_Closest_Inf_Rule;