{"id":"https://openalex.org/W2898598722","doi":"https://doi.org/10.1145/3276526","title":"Robust relational layout synthesis from examples for Android","display_name":"Robust relational layout synthesis from examples for Android","publication_year":2018,"publication_date":"2018-10-24","ids":{"openalex":"https://openalex.org/W2898598722","doi":"https://doi.org/10.1145/3276526","mag":"2898598722"},"language":"en","primary_location":{"id":"doi:10.1145/3276526","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3276526","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3276526","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3276526","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5090644266","display_name":"Pavol Bielik","orcid":null},"institutions":[{"id":"https://openalex.org/I35440088","display_name":"ETH Zurich","ror":"https://ror.org/05a28rw58","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I35440088"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Pavol Bielik","raw_affiliation_strings":["ETH Zurich, Switzerland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"ETH Zurich, Switzerland","institution_ids":["https://openalex.org/I35440088"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5074256851","display_name":"Marc Fischer","orcid":"https://orcid.org/0009-0001-6394-3490"},"institutions":[{"id":"https://openalex.org/I35440088","display_name":"ETH Zurich","ror":"https://ror.org/05a28rw58","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I35440088"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Marc Fischer","raw_affiliation_strings":["ETH Zurich, Switzerland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"ETH Zurich, Switzerland","institution_ids":["https://openalex.org/I35440088"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5069901599","display_name":"Martin Vechev","orcid":"https://orcid.org/0000-0002-0054-9568"},"institutions":[{"id":"https://openalex.org/I35440088","display_name":"ETH Zurich","ror":"https://ror.org/05a28rw58","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I35440088"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Martin Vechev","raw_affiliation_strings":["ETH Zurich, Switzerland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"ETH Zurich, Switzerland","institution_ids":["https://openalex.org/I35440088"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I35440088"],"apc_list":null,"apc_paid":null,"fwci":2.3315,"has_fulltext":true,"cited_by_count":22,"citation_normalized_percentile":{"value":0.8951094,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"2","issue":"OOPSLA","first_page":"1","last_page":"29"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9962999820709229,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9962999820709229,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11439","display_name":"Video Analysis and Summarization","score":0.9936000108718872,"subfield":{"id":"https://openalex.org/subfields/1707","display_name":"Computer Vision and Pattern Recognition"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9922000169754028,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7549647092819214},{"id":"https://openalex.org/keywords/robustness","display_name":"Robustness (evolution)","score":0.6251250505447388},{"id":"https://openalex.org/keywords/android","display_name":"Android (operating system)","score":0.5411322712898254},{"id":"https://openalex.org/keywords/probabilistic-logic","display_name":"Probabilistic logic","score":0.44416967034339905},{"id":"https://openalex.org/keywords/relational-database","display_name":"Relational database","score":0.4385858178138733},{"id":"https://openalex.org/keywords/relational-model","display_name":"Relational model","score":0.43734094500541687},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.43262043595314026},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.4312772750854492},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.27017152309417725},{"id":"https://openalex.org/keywords/data-mining","display_name":"Data mining","score":0.25203439593315125},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.19164836406707764},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.07483994960784912}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7549647092819214},{"id":"https://openalex.org/C63479239","wikidata":"https://www.wikidata.org/wiki/Q7353546","display_name":"Robustness (evolution)","level":3,"score":0.6251250505447388},{"id":"https://openalex.org/C557433098","wikidata":"https://www.wikidata.org/wiki/Q94","display_name":"Android (operating system)","level":2,"score":0.5411322712898254},{"id":"https://openalex.org/C49937458","wikidata":"https://www.wikidata.org/wiki/Q2599292","display_name":"Probabilistic logic","level":2,"score":0.44416967034339905},{"id":"https://openalex.org/C5655090","wikidata":"https://www.wikidata.org/wiki/Q192588","display_name":"Relational database","level":2,"score":0.4385858178138733},{"id":"https://openalex.org/C40207289","wikidata":"https://www.wikidata.org/wiki/Q755662","display_name":"Relational model","level":3,"score":0.43734094500541687},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.43262043595314026},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.4312772750854492},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.27017152309417725},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.25203439593315125},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.19164836406707764},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.07483994960784912},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3276526","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3276526","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3276526","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3276526","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3276526","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3276526","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2898598722.pdf","grobid_xml":"https://content.openalex.org/works/W2898598722.grobid-xml"},"referenced_works_count":23,"referenced_works":["https://openalex.org/W1977795386","https://openalex.org/W2010608861","https://openalex.org/W2040924900","https://openalex.org/W2048236564","https://openalex.org/W2100334480","https://openalex.org/W2156981320","https://openalex.org/W2219864925","https://openalex.org/W2241093273","https://openalex.org/W2274071363","https://openalex.org/W2295367909","https://openalex.org/W2444132761","https://openalex.org/W2550492213","https://openalex.org/W2608702473","https://openalex.org/W2617273419","https://openalex.org/W2740254106","https://openalex.org/W2747329762","https://openalex.org/W2787746902","https://openalex.org/W2794908093","https://openalex.org/W2795649955","https://openalex.org/W2798604085","https://openalex.org/W2798628553","https://openalex.org/W2963935794","https://openalex.org/W3104955806"],"related_works":["https://openalex.org/W2267077731","https://openalex.org/W1510134535","https://openalex.org/W2386578196","https://openalex.org/W2483382562","https://openalex.org/W3091612633","https://openalex.org/W2085988990","https://openalex.org/W1528519853","https://openalex.org/W2376710457","https://openalex.org/W1897774768","https://openalex.org/W3006903421"],"abstract_inverted_index":{"We":[0,43],"present":[1,44],"a":[2,18,30,70,81,88,101,118,169],"novel":[3],"approach":[4],"for":[5,168],"synthesizing":[6,166],"robust":[7],"relational":[8,31,85,106],"layouts":[9,107,128,146,167],"from":[10,148],"examples.":[11],"Given":[12],"an":[13,45],"application":[14],"design":[15],"consisting":[16],"of":[17,20,58,72,84,90,121,162,176],"set":[19,83,89],"views":[21,178],"and":[22,75,114,116,152,172],"their":[23],"location":[24],"on":[25,64],"the":[26,37,52,56,65,73,125,163,177],"screen,":[27],"we":[28],"synthesize":[29],"layout":[32,97],"that":[33,40,50,104,108,123,135],"when":[34,165],"rendered,":[35],"places":[36],"components":[38],"at":[39],"same":[41],"location.":[42],"end-to-end":[46],"system,":[47],"called":[48],"InferUI,":[49],"addresses":[51],"above":[53],"challenge":[54],"in":[55,160],"context":[57],"Android.":[59],"The":[60],"system":[61],"is":[62,137],"based":[63],"following":[66],"technical":[67],"contributions:":[68],"(i)":[69],"formalization":[71],"latest":[74],"most":[76],"efficient":[77],"ConstraintLayout":[78],"class,":[79],"capturing":[80],"rich":[82],"constraints,":[86],"(ii)":[87],"robustness":[91],"properties":[92],"designed":[93],"to":[94],"prevent":[95],"common":[96],"generalization":[98],"errors,":[99],"(iii)":[100],"synthesis":[102],"algorithm":[103],"produces":[105],"generalize":[109],"across":[110,179],"multiple":[111,180],"screen":[112],"sizes":[113],"resolutions,":[115],"(iv)":[117],"probabilistic":[119],"model":[120],"constraints":[122],"guides":[124],"synthesizer":[126],"towards":[127],"preferred":[129],"by":[130],"developers.":[131],"Our":[132],"evaluation":[133],"shows":[134],"InferUI":[136],"practically":[138],"effective:":[139],"it":[140],"successfully":[141],"synthesizes":[142],"real":[143],"world":[144],"complex":[145],"obtained":[147],"top":[149,153],"500":[150,154],"GitHub":[151],"Google":[155],"Play":[156],"Store":[157],"applications,":[158],"succeeds":[159],"100%":[161],"cases":[164],"single":[170],"device,":[171],"correctly":[173],"generalizes":[174],"92%":[175],"devices,":[181],"all":[182],"without":[183],"requiring":[184],"additional":[185],"specifications.":[186]},"counts_by_year":[{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":6},{"year":2021,"cited_by_count":4},{"year":2020,"cited_by_count":3},{"year":2019,"cited_by_count":1}],"updated_date":"2026-05-21T06:26:12.895304","created_date":"2025-10-10T00:00:00"}
