IP Library Granted Patent US 11,010,680
Granted Patent B1
US 11,010,680 · App. 15/649,555 · Granted May 18, 2021

Memory efficiency of production rule systems

Inventors: Daniel Marino (Los Angeles, CA); Kevin Roundy (El Segundo, CA); Acar Tamersoy (Culver City, CA); Sandeep Bhatkar (Sunnyvale, CA)
Assignee: NortonLifeLock Inc.
G06N5/047
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,010,680
App. No.
15/649,555
Granted
May 18, 2021
Kind
B1
Abstract

A method for improving memory efficiency of production rule systems is described. In one embodiment, the method includes identifying a rule associated with production rule systems, constructing a production rule network based at least in part on the rule, identifying a positional constraint associated with the rule, and implementing an alpha memory gate in the production rule network based at least in part on the positional constraint. In some cases, the alpha memory gate is one of a plurality of nodes of the production rule network.

Claims (46)

1. A method for improving efficiency of a pattern matching system, comprising:

identifying a rule associated with production rule systems;

constructing a production rule network based at least in part on the rule;

identifying a positional constraint associated with the rule, wherein the positional constraint controls which inputs are allowed to pass downstream based at least in part on a position of a given input relative to positions of a circular schedule queue;

implementing an alpha memory gate at an interface between an alpha memory and a beta join node in the production rule network based at least in part on the positional constraint, the alpha memory gate being one of a plurality of nodes of the production rule network;

implementing the production rule network to monitor a computing device; and

performing a security action based at least in part on the monitoring.

2. The method of claim 1 , wherein the plurality of nodes of the production rule network include one or more nodes in an alpha network and one or more nodes in a beta network, and wherein the alpha memory gate is positioned in between the alpha network and the beta network.

3. The method of claim 2 , wherein the alpha memory of the alpha network receives an input and the alpha memory gate controls whether the input is allowed to pass downstream to the beta join node of the beta network.

4. The method of claim 3 , further comprising:

activating the alpha memory gate when the positional constraint is satisfied.

5. The method of claim 4 , wherein the alpha memory gate when activated permits the input stored by the alpha memory to pass from the alpha network to the beta network.

6. The method of claim 3 , further comprising:

deactivating the alpha memory gate when the positional constraint is not satisfied; and

removing the input from the alpha memory based at least in part on the deactivation of the alpha memory gate.

7. The method of claim 6 , wherein the alpha memory gate when deactivated does not permit the input stored by the alpha memory to pass from the alpha network to the beta network.

8. The method of claim 1 , wherein the alpha memory gate is positioned between the gate connected to the alpha memory and the gate connected to the beta join node within the production rule network.

9. The method of claim 1 , wherein the alpha memory gate is configured with the positional constraint.

10. The method of claim 1 , wherein nodes of the production rule network are constructed and positioned in the production rule network according to a Rete algorithm.

11. A computing device configured for improving efficiency of a pattern matching system, comprising:

one or more processors;

memory in electronic communication with the one or more processors, wherein the memory stores computer executable instructions that when executed by the one or more processors cause the one or more processors to perform the steps of:

identifying a rule associated with production rule systems;

constructing a production rule network based at least in part on the rule;

identifying a positional constraint associated with the rule, wherein the positional constraint controls which inputs are allowed to pass downstream based at least in part on a position of a given input relative to positions of a circular schedule queue;

implementing an alpha memory gate at an interface between an alpha memory and a beta join node in the production rule network based at least in part on the positional constraint, the alpha memory gate being one of a plurality of nodes of the production rule network;

implementing the production rule network to monitor the computing device; and

performing a security action based at least in part on the monitoring.

12. The computing device of claim 11 , wherein the plurality of nodes of the production rule network include one or more nodes in an alpha network and one or more nodes in a beta network, and wherein the alpha memory gate is positioned in between the alpha network and the beta network.

13. The computing device of claim 12 , wherein the alpha memory of the alpha network receives an input and the alpha memory gate controls whether the input is allowed to pass downstream to the beta join node of the beta network.

14. The computing device of claim 13 , wherein the instructions executed by the one or more processors cause the one or more processors to perform the steps of:

activating the alpha memory gate when the positional constraint is satisfied.

15. The computing device of claim 14 , wherein the alpha memory gate when activated permits the input stored by the alpha memory to pass from the alpha network to the beta network.

16. The computing device of claim 13 , wherein the instructions executed by the one or more processors cause the one or more processors to perform the steps of:

deactivating the alpha memory gate when the positional constraint is not satisfied; and

removing the input from the alpha memory based at least in part on the deactivation of the alpha memory gate.

17. The computing device of claim 16 , wherein the alpha memory gate when deactivated does not permit the input stored by the alpha memory to pass from the alpha network to the beta network.

18. The computing device of claim 11 , wherein the alpha memory gate is positioned between the gate connected to the alpha memory and the gate connected to the beta join node within the production rule network.

19. A non-transitory computer-readable storage medium storing computer executable instructions that when executed by one or more processors cause the one or more processors to perform the steps of:

identifying a rule associated with production rule systems;

constructing a production rule network based at least in part on the rule;

identifying a positional constraint associated with the rule, wherein the positional constraint controls which inputs are allowed to pass downstream based at least in part on a position of a given input relative to positions of a circular schedule queue;

implementing an alpha memory gate at an interface between an alpha memory and a beta join node in the production rule network based at least in part on the positional constraint, the alpha memory gate being one of a plurality of nodes of the production rule network;

implementing the production rule network to monitor a computing device; and

performing a security action based at least in part on the monitoring.

20. The non-transitory computer-readable storage medium of claim 19 , wherein the plurality of nodes of the production rule network include one or more nodes in an alpha network and one or more nodes in a beta network, and wherein the alpha memory gate is positioned in between the alpha network and the beta network.

Assignments (5)
NOTICE OF SUCCESSION OF AGENCY (REEL 050926 / FRAME 0560) Recorded Sep 13, 2022
From: JPMORGAN CHASE BANK, N.A.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 061422/0371 →
SECURITY AGREEMENT Recorded Sep 13, 2022
From: NORTONLIFELOCK INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062220/0001 →
CHANGE OF NAME Recorded Jan 30, 2020
From: SYMANTEC CORPORATION
To: NORTONLIFELOCK INC.
Reel/Frame 051759/0845 →
SECURITY AGREEMENT Recorded Nov 4, 2019
From: SYMANTEC CORPORATION; BLUE COAT LLC; LIFELOCK, INC,; SYMANTEC OPERATING CORPORATION
To: JPMORGAN, N.A.
Reel/Frame 050926/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2017
From: MARINO, DANIEL; ROUNDY, KEVIN; TAMERSOY, ACAR; BHATKAR, SANDEEP
To: SYMANTEC CORPORATION
Reel/Frame 043194/0439 →