logic based inductive synthesis of efficient programs
play

Logic-based inductive synthesis of efficient programs Andrew - PowerPoint PPT Presentation

Logic-based inductive synthesis of efficient programs Andrew Cropper Imperial College London String transformations Outpu Input t Computer Aided Verification CAV Principles Of Programming Languages POPL International Conference on


  1. Logic-based inductive synthesis of efficient programs Andrew Cropper Imperial College London

  2. String transformations Outpu Input t Computer Aided Verification CAV Principles Of Programming Languages POPL International Conference on Functional Programming ??? International Joint Conference Artificial Intelligence ??? Neural Information Processing Systems ???

  3. % prolog % python f([],[]). def f(input): f([X|Input],[X|Output]):- output=[] is_uppercase(X), for x in string: f(Input,Output). if x.isupper(): f([X|Input],Output):- output.append(x) not_uppercase(X), return output f(Input,Output).

  4. Sorting Input Output [9,13,1,8,4] [1,4,8,9,13] [1,18,20,6,15,5] [1,5,6,15,18,20] [12,16,18,6,15,3,5] ??? [16,1,4,12,3,18,2,14] ??? [12,17,5,13,6,4,14,2,15] ???

  5. Learning efficient robot strategies [IJCAI15] Initial state Final state 3 3 2 2 1 1 0 0 0 1 2 3 0 1 2 3

  6. move(X,Y):-p3(X,Z),p3(Z,Y). move(X,Y):-p3(X,Z),drop(Z,Y). p3(X,Y):-p2(X,Z),drop(Z,Y). p3(X,Y):-grab(X,Z),p2(Z,Y). p2(X,Y):-grab(X,Z),p1(Z,Y). p2(X,Y):-p1(X,Z),p1(Z,Y). p1(X,Y):-north(X,Z),east(Z,Y). p1(X,Y):-north(X,Z),east(Z,Y).

  7. grab drop Inefficient solution Efficient solution 3 3 2 2 1 1 0 0 0 1 2 3 0 1 2 3 resource complexity: 8 resource complexity: 6 Action drop grab north east Cost 1 1 1 1

  8. Meta-interpretive learning (MIL) A form of inductive logic programming based on Prolog meta-interpreter which supports: • predicate invention • learning recursive programs • learning efficient programs • learning higher-order programs https://github.com/metagol

  9. Sorting experiment Input Output [9,13,1,8,4] [1,4,8,9,13] [1,18,20,6,15,5] [1,5,6,15,18,20] [12,16,18,6,15,3,5] ??? [16,1,4,12,3,18,2,14] ??? [12,17,5,13,6,4,14,2,15] ???

  10. 5 , 000 Metagol O Metagol D Mean resource complexity Tight bound n log n 4 , 000 Tight bound n(n-1)/2 3 , 000 2 , 000 1 , 000 0 20 40 60 80 100 List length

  11. Conclusions • pruning the search space [IJCAI15] • higher-order programs [IJCAI16] Future work • Demonstrate generality • Use to discover novel algorithms

  12. Thank you

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend