Fri 9 Nov 2018 10:52 - 11:15 at Studio 2 - Program Synthesis Chair(s): Jens Palsberg

We present a novel approach for synthesizing robust relational layouts from examples. Given an application design consisting of a set of views and their location on screen, we synthesize a relational layout that when rendered, places the components at that same location.

We present an end-to-end system, called InferUI, that addresses the above challenge in the context of Android. The system is based on the following technical contributions: (i) a complete formalization of the latest and most efficient ConstraintLayout class, capturing a rich set of relational constraints, (ii) a set of robustness properties designed to prevent common layout generalization errors, (iii) a synthesis algorithm that produces relational layouts that generalize across multiple screen sizes and resolutions, and (iv) a probabilistic model of constraints which guides the synthesizer towards layouts preferred by developers.

Our evaluation shows that InferUI is practically effective: it successfully synthesizes real world complex layouts obtained from top 500 GitHub and top 500 Google Play Store applications, succeeds in 100% of cases when synthesizing layouts for a single device, and correctly generalizes 92% of views across multiple devices, all without requiring additional specifications.

Fri 9 Nov

Displayed time zone: Guadalajara, Mexico City, Monterrey change

10:30 - 12:00
Program SynthesisOOPSLA at Studio 2
Chair(s): Jens Palsberg University of California, Los Angeles
10:30
22m
Talk
Relational Program Synthesis
OOPSLA
Yuepeng Wang University of Texas at Austin, Xinyu Wang UT Austin, Işıl Dillig UT Austin
10:52
22m
Talk
Robust Relational Layout Synthesis from Examples for Android
OOPSLA
Pavol Bielik ETH Zürich, Marc Fischer ETH Zurich, Martin Vechev ETH Zürich
11:15
22m
Talk
Speeding up Symbolic Reasoning for Relational Queries
OOPSLA
Chenglong Wang University of Washington, USA, Alvin Cheung University of Washington, Rastislav Bodík University of Washington
11:37
22m
Talk
Automatic Diagnosis and Correction of Logical Errors for Functional Programming Assignments
OOPSLA
Junho Lee Korea University, Dowon Song Korea University, Sunbeom So Korea University, Hakjoo Oh Korea University