×

Parallel search in program synthesis

  • US 11,194,800 B2
  • Filed: 04/26/2018
  • Issued: 12/07/2021
  • Est. Priority Date: 04/26/2018
  • Status: Active Grant
First Claim
Patent Images

1. A method for parallel scheduling in program synthesis, the method comprising operations performed using an electronic processor, the operations comprising:

  • receiving a task to synthesize in a domain specific language (DSL);

    synthesizing the task, wherein synthesizing of the task comprises;

    generating a plurality of independently executable multilevel sub-goals based on the task, wherein the synthesized task comprises a solved subset of the plurality of the sub-goals;

    determining an estimated completion time for each of the plurality of sub-goals, wherein the estimated completion time is provided by a predictor trained using a plurality of training tasks in the DSL, wherein determining the estimated completion time for each of the plurality of sub-goals comprises serializing each of the plurality of subgoals, and wherein each of the plurality of sub-goals is expressed using the DSL;

    scheduling the plurality of the sub-goals based on the estimated completion time, wherein at least two of the plurality of the sub-goals are scheduled to be executed in parallel; and

    solving the plurality of sub-goals based on the scheduling to synthesize the task in the DSL, wherein an elapsed real time to complete the synthesizing the task is reduced compared to scheduling the sub-goals in an order based on sub-goal generation.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×