US 11,875,139 B2
Systems and methods for synthesizing code from input and output examples
Kensen Shi, Palo Alto, CA (US); Rishabh Singh, San Jose, CA (US); and David J. Bieber, New York, NY (US)
Assigned to GOOGLE LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Feb. 6, 2023, as Appl. No. 18/165,047.
Application 18/165,047 is a continuation of application No. 17/676,601, filed on Feb. 21, 2022, granted, now 11,573,774.
Application 17/676,601 is a continuation of application No. 16/929,467, filed on Jul. 15, 2020, granted, now 11,256,485, issued on Feb. 22, 2022.
Claims priority of provisional application 62/874,756, filed on Jul. 16, 2019.
Prior Publication US 2023/0185545 A1, Jun. 15, 2023
Int. Cl. G06F 16/24 (2019.01); G06F 8/36 (2018.01); G06N 5/04 (2023.01); G06N 20/00 (2019.01)
CPC G06F 8/36 (2013.01) [G06F 16/24 (2019.01); G06N 5/04 (2013.01); G06N 20/00 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method for automatically synthesizing computer-executable code based on input and output examples, the method comprising:
obtaining, by one or more computing devices, one or more input tensors that each contain one or more input values and one or more output tensors that each contain one or more desired output values;
processing, by the one or more computing devices, the one or more input tensors and the one or more output tensors with one or more machine-learned models to generate one or more computer-executable expressions,
wherein each of the one or more computer-executable expressions comprises a respective combination of one or more of a plurality of performable operations included in one or more software libraries, and
wherein each of the one or more computer-executable expressions produce the one or more output tensors when performed on the one or more input tensors; and
providing, by the one or more computing devices, the one or more computer-executable expressions as an output.