Parameterised Queries and Lifted Query Answering

Authors: Tanya Braun, Ralf Möller

IJCAI 2018 | Conference PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental We have implemented a prototype of LJT, named ljt. Taghipour provides an implementation of LVE including its operators (available at https://dtai.cs.kuleuven.be/software/gcfove), named lve. We have adapted both implementations for on-demand shattering and parameterised queries. The input model is Gex with varying domain sizes for its logvars, from 1 to 1,000 for X and from 1 to 200 for J, A, and M, setting the latter domain sizes to one fifth of the X domain size. The domain sizes result in grounded model sizes |gr(Gex)| from 4 to 241,001. The query is {Res(X)}| as well as gr({Res(X)}| ). We do not consider evidence. We compare runtimes for inference averaged over five runs with 2 GB of working storage. lve eliminates all non-query randvars from Gex. ljt builds an FO jtree for Gex, passes messages, and then answers the given query on the respective submodel. Preprocessing amounts to 80 ms for construction and 20 ms for message passing. We test lve and ljt with preemptive and on-demand shattering. Figure 3 shows runtimes in milliseconds [ms] of lve (filled/orange) and ljt (hollow/turquoise) with increasing |gr(Gex)| on a log-scaled x-axis.
Researcher Affiliation Academia Tanya Braun, Ralf M oller Institute of Information Systems, University of L ubeck, L ubeck, Germany {braun,moeller}@ifis.uni-luebeck.de
Pseudocode Yes Algorithm 1 LVE for Parameterised Queries 1: function LVE(Model G, Query Q, Evidence E) 2: Shatter G on E and Q 3: Absorb E in G using absorb 4: while G has non-query PRVs do 5: if PRV A fulfils sum-out preconditions then 6: Eliminate A from G using sum-out 7: else 8: Apply transformator in G 9: while lv(G) = do 10: if X lv(G) s.t. X is count-convertible then 11: Count X using count-convert in G 12: else 13: Apply other transformator in G 14: return Multiply parfactors in G and normalise
Open Source Code No The paper mentions 'Taghipour provides an implementation of LVE including its operators (available at https://dtai.cs.kuleuven.be/software/gcfove), named lve.' which refers to a third-party tool. It also states 'We have implemented a prototype of LJT, named ljt. We have adapted both implementations for on-demand shattering and parameterised queries.' but does not provide a link or explicit statement for the availability of their own prototype code or adaptations.
Open Datasets No The paper describes using 'Gex' as an 'input model' defined within the paper itself for its running example and experiments. It is not an external, publicly available dataset with a specific link, DOI, repository, or formal citation.
Dataset Splits No The paper does not provide specific dataset split information (e.g., percentages, sample counts, citations to predefined splits) for training, validation, or test sets. It discusses varying domain sizes for its internal model Gex but not data partitioning.
Hardware Specification No The paper does not provide specific hardware details (e.g., exact GPU/CPU models, processor types with speeds, memory amounts, or detailed computer specifications) used for running its experiments. It only mentions '2 GB of working storage'.
Software Dependencies No The paper mentions 'We have implemented a prototype of LJT, named ljt. Taghipour provides an implementation of LVE including its operators (available at https://dtai.cs.kuleuven.be/software/gcfove), named lve.' but does not provide specific version numbers for these implementations or any other ancillary software dependencies like programming languages or libraries.
Experiment Setup Yes The input model is Gex with varying domain sizes for its logvars, from 1 to 1,000 for X and from 1 to 200 for J, A, and M, setting the latter domain sizes to one fifth of the X domain size. The query is {Res(X)}| as well as gr({Res(X)}| ). We do not consider evidence. We compare runtimes for inference averaged over five runs with 2 GB of working storage. lve eliminates all non-query randvars from Gex. ljt builds an FO jtree for Gex, passes messages, and then answers the given query on the respective submodel. Preprocessing amounts to 80 ms for construction and 20 ms for message passing.