Patrick K. Nicholson

dblp:40/7591 · DBLP profile ↗
← Back
45ranked-venue papers
2as first author
4since 2021 · last 2021
0000-0001-5867-5973ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 21 · 1 first-author · 1 since 2021Databases, data management, data science and information retrieval · 14 · 1 first-author · 1 since 2021Systems, architecture and hardware · 5 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 4Artificial intelligence and machine learning · 3 · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 3 · 1 first-authorComputer networks · 2 · 1 since 2021Software engineering, systems software and programming languages · 2
YearPublicationVenuePosition
2021 IMITA: Imitation Learning for Generalizing Cloud Orchestration
abstract
Operating large scale and feature-rich applications is becoming increasingly complex as engineers need to deploy highly configurable software releases on distributed cloud stacks while managing ever-shorter production cycles. Although recent proposals attempt to streamline cloud resources orchestration, there is still a significant challenge in making such solutions generalize to unseen cloud stacks. In other words, the behavior of application-specific Key Performance Indicators (KPIs) and resource configurations, crafted for specific stacks, may differ on heterogeneous deployments, requiring time-consuming policy adjustments. We introduce IMITA, a system that leverages imitation learning to create models by imitating an expert behavior that can be generalized seamlessly to new cloud stacks. To make a generalized model, IMITA maps expert actions taken based on the application KPI space to the space of resource utilization metrics that are universally available in cloud platforms. This mapping enables the model to trigger actions, mimicking expert behavior, upon the occurrence of similar re-source utilization footprints across deployments. We demonstrate IMITA by learning to scale-out Cassandra deployments with diverse configurations and workloads. Our results show IMITA can replicate expert actions across deployments and extrapolate to unseen environments by achieving 50 - 94% fewer false positives actions than traditional threshold-based policies while still adhering to Service-Level Objectives (SLO) and avoiding under-provisioning of resources. Moreover, since collecting data in clouds is costly, IMITA gathers data only for representative configurations to train the imitator model. This approach reduces the size of the collected data to 50%.
Kamal Hakimzadeh, Patrick K. Nicholson, Diego Lugones, Amir Hossein Payberah
CCGRID2
2021 Geometric Heuristics for Transfer Learning in Decision Trees
abstract
Motivated by a network fault detection problem, we study how recall can be boosted in a decision tree classifier, without sacrificing too much precision. This problem is relevant and novel in the context of transfer learning(TL), in which few target domain training samples are available. We define a geometric optimization problem for boosting the recall of a decision tree classifier, and show it is NP-hard. To solve it efficiently, we propose several near-linear time heuristics, and experimentally validate these heuristics in the context of TL. Our evaluation includes 7 public datasets, as well as 6 network fault datasets, and we compare our heuristics with several existing TL algorithms, as well as exact mixed integer linear programming(MILP) solutions to our optimization problem. We find that our heuristics boost recall in a manner similar to optimal MILP solutions, yet require several orders of magnitude less compute time. In many cases the F1 score of our approach is competitive, and often better, than other TL algorithms. Moreover, our approach can be used as a building block to apply transfer learning to more powerful ensemble methods, such as random forests.
Siddhesh Chaubal, Mateusz Rzepecki, Patrick K. Nicholson, Guangyuan Piao, Alessandra Sala
CIKM3
2021 Hypersuccinct Trees - New Universal Tree Source Codes for Optimal Compressed Tree Data Structures and Range Minima
abstract
We present a new universal source code for distributions of unlabeled binary and ordinal trees that achieves optimal compression to within lower order terms for all tree sources covered by existing universal codes. At the same time, it supports answering many navigational queries on the compressed representation in constant time on the word-RAM; this is not known to be possible for any existing tree compression method. The resulting data structures, "hypersuccinct trees", hence combine the compression achieved by the best known universal codes with the operation support of the best succinct tree data structures. We apply hypersuccinct trees to obtain a universal compressed data structure for range-minimum queries. It has constant query time and the optimal worst-case space usage of $2n+o(n)$ bits, but the space drops to $1.736n + o(n)$ bits on average for random permutations of $n$ elements, and $2\lg\binom nr + o(n)$ for arrays with $r$ increasing runs, respectively. Both results are optimal; the former answers an open problem of Davoodi et al. (2014) and Golin et al. (2016). Compared to prior work on succinct data structures, we do not have to tailor our data structure to specific applications; hypersuccinct trees automatically adapt to the trees at hand. We show that they simultaneously achieve the optimal space usage to within lower order terms for a wide range of distributions over tree shapes, including: binary search trees (BSTs) generated by insertions in random order / Cartesian trees of random arrays, random fringe-balanced BSTs, binary trees with a given number of binary/unary/leaf nodes, random binary tries generated from memoryless sources, full binary trees, unary paths, as well as uniformly chosen weight-balanced BSTs, AVL trees, and left-leaning red-black trees.
J. Ian Munro, Patrick K. Nicholson, Louisa Seelbach Benkner, Sebastian Wild
ESA2
2021 Data-Driven Energy Conservation in Cellular Networks: A Systems Approach
abstract
The energy consumption of mobile networks is already substantial nowadays, and only expected to further increase with the roll-out of 5G. Base stations are the key elements in this context: reducing their energy consumption is of paramount importance for network operators, not only to lower operating costs, but also to meet sustainable development goals. Today's base stations are typically over-provisioned, i.e., they comprise multiple cells to meet the peak load in a region. Therefore, substantial energy savings are possible by switching off cells that are under-utilized. This article proposes a data-driven approach to determine the time periods when a cell can be switched off. Forecasting is used to accurately predict network utilization and automatically find the time intervals to reliably switch off a cell. We carefully analyze the requirements of the system as a whole, from data collection to forecasting methods, to enable effective energy savings in practice. Considering several real-world traces from LTE networks, we show that an average of 10.24% energy savings is possible. We explore the trade-offs between energy savings and overhead in switching off cells, and provide insights into the choice of methods accordingly. In particular, we show that the accuracy of forecasting is not the most important factor in achieving energy savings; instead, the prediction (uncertainty) interval plays a key role in being able to achieve energy savings with less impact on end-users. Finally, we propose a model to generate utilization traces that match the distribution of real-world traces obtained from cellular networks.
Gopika Premsankar, Guangyuan Piao, Patrick K. Nicholson, Mario Di Francesco, Diego Lugones
IEEE Trans. Netw. Serv. Manag.3
2020 Env2Vec: accelerating VNF testing with deep learning
abstract
The adoption of fast-paced practices for developing virtual network functions (VNFs) allows for continuous software delivery and creates a market advantage for network operators. This adoption, however, is problematic for testing engineers that need to assure, in shorter development cycles, certain quality of highly-configurable product releases running on heterogeneous clouds. Machine learning (ML) can accelerate testing workflows by detecting performance issues in new software builds. However, the overhead of maintaining several models for all combinations of build types, network configurations, and other stack parameters, can quickly become prohibitive and make the application of ML infeasible.
Guangyuan Piao, Patrick K. Nicholson, Diego Lugones
EuroSys2
2020 On Reconfiguring 5G Network Slices
abstract
The virtual resources of 5G networks are expected to scale and support migration to other locations within the substrate. In this context, a configuration for 5G network slices details the instantaneous mapping of the virtual resources across all slices on the substrate, and a feasible configuration satisfies the Service-Level Objectives (SLOs) without overloading the substrate. Reconfiguring a network from a given source configuration to the desired target configuration involves identifying an ordered sequence of feasible configurations from the source to the target. The proposed solutions for finding such a sequence are optimized for data centers and cannot be used as-is for reconfiguring 5G network slices. We present Matryoshka, our divide-and-conquer approach for finding a sequence of feasible configurations that can be used to reconfigure 5G network slices. Unlike previous approaches, Matryoshka also considers the bandwidth and latency constraints between the network functions of network slices. Evaluating Matryoshka required a dataset of pairs of source and target configurations. Because such a dataset is currently unavailable, we analyze proof of concept roll-outs, trends in standardization bodies, and research sources to compile an input dataset. On using Matryoshka on our dataset, we observe that it yields close-to-optimal reconfiguration sequences 10X faster than existing approaches.
Matteo Pozza, Patrick K. Nicholson, Diego Lugones, Ashwin Rao, Hannu Flinck, Sasu Tarkoma
IEEE J. Sel. Areas Commun.2
2019 Cartel: A System for Collaborative Transfer Learning at the Edge
abstract
As Multi-access Edge Computing (MEC) and 5G technologies evolve, new applications are emerging with unprecedented capacity and real-time requirements. At the core of such applications there is a need for machine learning (ML) to create value from the data at the edge. Current ML systems transfer data from geo-distributed streams to a central datacenter for modeling. The model is then moved to the edge and used for inference or classification. These systems can be ineffective because they introduce significant demand for data movement and model transfer in the critical path of learning. Furthermore, a full model may not be needed at each edge location. An alternative is to train and update the models online at each edge with local data, in isolation from other edges. Still, this approach can worsen the accuracy of models due to reduced data availability, especially in the presence of local data shifts.
Harshit Daga, Patrick K. Nicholson, Ada Gavrilovska, Diego Lugones
SoCC2
2019 Monitorless: Predicting Performance Degradation in Cloud Applications with Machine Learning
abstract
Today, software operation engineers rely on application key performance indicators (KPIs) for sizing and orchestrating cloud resources dynamically. KPIs are monitored to assess the achievable performance and to configure various cloud-specific parameters such as flavors of instances and autoscaling rules, among others. Usually, keeping KPIs within acceptable levels requires application expertise which is expensive and can slow down the continuous delivery of software. Expertise is required because KPIs are normally based on application-specific quality-of-service metrics, like service response time and processing rate, instead of generic platform metrics, like those typical across various environments (e.g., CPU and memory utilization, I/O rate, etc.)
Johannes Grohmann, Patrick K. Nicholson, Jesus Omaña Iglesias, Samuel Kounev, Diego Lugones
Middleware2
2019 Revisiting explicit adaptive two-probe schemes
Patrick K. Nicholson
Inf. Process. Lett.1
2019 Automated assessment of knowledge hierarchy evolution: comparing directed acyclic graphs
Guruprasad Nayak, Sourav Dutta 0001, Deepak Ajwani, Patrick K. Nicholson, Alessandra Sala
Inf. Retr. J.4
2018 ANNOTATE: orgANizing uNstructured cOntenTs viA Topic labEls
abstract
With the advent of Big Data paradigm, filtering, retrieval, and linking of unstructured multi-modal data has become a necessity. Assigning topic labels to contents, that accurately capture the meaning and contextual information, is a fundamental problem in organizing unstructured data. The usage of manually-assigned tags for this purpose introduces inconsistencies because of different "surface forms". On the other hand, existing automated approaches either use hierarchical multi-label classification, or are unsupervised and rely on (undirected) graph measures leveraging taxonomies. While the former requires large training data set to learn the characteristics of each topic class, the latter lacks the flexibility to learn broad range of related topics and are less accurate.We propose a novel framework, ANNOTATE based on a small set of features and directed traversal of taxonomies to learn a broad spectrum of related topics using limited training data. We also show that our approach provides accurate labels for several domains without the need for re-training. For instance, the framework, trained on a small set of BBC news articles, exhibits close matches to user-generated tags for Quora documents. Experimental results, on the same model, for news classification and identifying aspects of Amazon product reviews, based on Amazon Mechanical Turk evaluation show our approach to be significantly better than state-of-the-art.We further present real-life case studies of our proposed framework for automatically tagging Quora posts, and topically segmenting, indexing and linking related YouTube videos (using our publicly available Chrome browser extension).
Deepak Ajwani, Bilyana Taneva, Sourav Dutta 0001, Patrick K. Nicholson, Ghasem Heyrani-Nobari, Alessandra Sala
IEEE BigData4
2018 Auto-Scaling with Apprenticeship Learning
abstract
No abstract available.
Kamal Hakimzadeh, Patrick K. Nicholson, Diego Lugones
SoCC2
2018 Enriching Taxonomies With Functional Domain Knowledge
abstract
The rising need to harvest domain specific knowledge in several applications is largely limited by the ability to dynamically grow structured knowledge representations, due to the increasing emergence of new concepts and their semantic relationships with existing ones. Such enrichment of existing hierarchical knowledge sources with new information to better model the "changing world" presents two-fold challenges: (1) Detection of previously unknown entities or concepts, and (2) Insertion of the new concepts into the knowledge structure, respecting the semantic integrity of the created relationships. To this end we propose a novel framework, ETF, to enrich large-scale, generic taxonomies with new concepts from resources such as news and research publications. Our approach learns a high-dimensional embedding for the existing concepts of the taxonomy, as well as for the new concepts. During the insertion of a new concept, this embedding is used to identify semantically similar neighborhoods within the existing taxonomy. The potential parent-child relationships linking the new concepts to the existing ones are then predicted using a set of semantic and graph features. Extensive evaluation of ETF on large, real-world taxonomies of Wikipedia and WordNet showcase more than 5% F1-score improvements compared to state-of-the-art baselines. We further demonstrate that ETF can accurately categorize newly emerging concepts and question-answer pairs across different domains.
Nikhita Vedula, Patrick K. Nicholson, Deepak Ajwani, Sourav Dutta 0001, Alessandra Sala, Srinivasan Parthasarathy 0001
SIGIR2
2018 Any-k: Anytime Top-k Tree Pattern Retrieval in Labeled Graphs
abstract
Many problems in areas as diverse as recommendation systems, social network analysis, semantic search, and distributed root cause analysis can be modeled as pattern search on labeled graphs (also called "heterogeneous information networks" or HINs). Given a large graph and a query pattern with node and edge label constraints, a fundamental challenge is to find the top-k matches according to a ranking function over edge and node weights. For users, it is difficult to select value k. We therefore propose the novel notion of an any-k ranking algorithm: for a given time budget, return as many of the top-ranked results as possible. Then, given additional time, produce the next lower-ranked results quickly as well. It can be stopped anytime, but may have to continue until all results are returned. This paper focuses on acyclic patterns over arbitrary labeled graphs. We are interested in practical algorithms that effectively exploit (1) properties of heterogeneous networks, in particular selective constraints on labels, and (2) that the users often explore only a fraction of the top-ranked results. Our solution, KARPET, carefully integrates aggressive pruning that leverages the acyclic nature of the query, and incremental guided search. It enables us to prove strong non-trivial time and space guarantees, which is generally considered very hard for this type of graph search problem. Through experimental studies we show that KARPET achieves running times in the order of milliseconds for tree patterns on large networks with millions of nodes and edges.
Deepak Ajwani, Wolfgang Gatterbauer, Patrick K. Nicholson, Mirek Riedewald, Alessandra Sala
WWW4
2018 Encoding nearest larger values
Michael Hoffmann 0002, John Iacono, Patrick K. Nicholson, Rajeev Raman
Theor. Comput. Sci.3
2018 Prioritized Relationship Analysis in Heterogeneous Information Networks
abstract
An increasing number of applications are modeled and analyzed in network form, where nodes represent entities of interest and edges represent interactions or relationships between entities. Commonly, such relationship analysis tools assume homogeneity in both node type and edge type. Recent research has sought to redress the assumption of homogeneity and focused on mining heterogeneous information networks (HINs) where both nodes and edges can be of different types. Building on such efforts, in this work, we articulate a novel approach for mining relationships across entities in such networks while accounting for user preference over relationship type and interestingness metric. We formalize the problem as a top- k lightest paths problem, contextualized in a real-world communication network, and seek to find the k most interesting path instances matching the preferred relationship type. Our solution, PROphetic HEuristic Algorithm for Path Searching (PRO-HEAPS), leverages a combination of novel graph preprocessing techniques, well-designed heuristics and the venerable A* search algorithm. We run our algorithm on real-world large-scale graphs and show that our algorithm significantly outperforms a wide variety of baseline approaches with speedups as large as 100X. To widen the range of applications, we also extend PRO-HEAPS to (i) support relationship analysis between two groups of entities and (ii) allow pattern path in the query to contain logical statements with operators AND, OR, NOT, and wild-card “.”. We run experiments using this generalized version of PRO-HEAPS and demonstrate that the advantage of PRO-HEAPS becomes even more pronounced for these general cases. Furthermore, we conduct a comprehensive analysis to study how the performance of PRO-HEAPS varies with respect to various attributes of the input HIN. We finally conduct a case study to demonstrate valuable applications of our algorithm.
Jiongqian Liang, Deepak Ajwani, Patrick K. Nicholson, Alessandra Sala, Srinivasan Parthasarathy 0001
ACM Trans. Knowl. Discov. Data3
2017 Efficient Set Intersection Counting Algorithm for Text Similarity Measures
abstract
Set intersection counting appears as a subroutine in many techniques used in natural language processing, in which similarity is often measured as a function of document cooccurence counts between pairs of noun phrases or entities. Such techniques include clustering of text phrases and named entities, topic labeling, entity disambiguation, sentiment analysis, and search for synonyms. These techniques can have real-time constraints that require very fast computation of thousands of set intersection counting queries with little space overhead and minimal error. On one hand, while sketching techniques for approximate intersection counting exist and have very fast query time, many have issues with accuracy, especially for pairs of lists that have low Jaccard similarity. On the other hand, space-efficient computation of exact intersection sizes is particularly challenging in real-time. In this paper, we show how an efficient space-time trade-off can be achieved for exact set intersection counting, by combining state-of-the-art algorithms with precomputation and judicious use of compression. In addition, we show that the performance can be further improved by combining the best aspects of these algorithms. We present experimental evidence that realtime computation of exact intersection sizes is feasible with low memory overhead: we improve the mean query time of baseline approaches by over a factor of 100 using a data structure that takes merely twice the size of an inverted index. Overall, in our experiments, we achieve running times within the same order of magnitude as well-known approximation techniques.
Preethi Lahoti, Patrick K. Nicholson, Bilyana Taneva
ALENEX2
2017 Scalable Disambiguation System Capturing Individualities of Mentions
Tiep Mai, Bichen Shi, Patrick K. Nicholson, Deepak Ajwani, Alessandra Sala
LDK3
2017 Optimal Distance Labeling Schemes for Trees
abstract
Labeling schemes seek to assign a short label to each node in a network, so that a function on two nodes (such as distance or adjacency) can be computed by examining their labels alone. For the particular case of trees, following a long line of research, optimal bounds (up to low order terms) were recently obtained for adjacency labeling [FOCS '15], nearest common ancestor labeling [SODA '14], and ancestry labeling [SICOMP '06]. In this paper we obtain optimal bounds for distance labeling. We present labels of size 1/4\log^2n+o(\log^2n), matching (up to low order terms) the recent 1/4\log^2n-\Oh(\log n) lower bound [ICALP '16].
Ofer Freedman, Pawel Gawrychowski, Patrick K. Nicholson, Oren Weimann
PODC3
2017 Optimal Query Time for Encoding Range Majority
Pawel Gawrychowski, Patrick K. Nicholson
WADS2
2016 A General Framework for Dynamic Succinct and Compressed Data Structures
abstract
Succinct data structures are becoming increasingly popular in big data processing applications due to their low memory consumption. However, a feature that is currently lacking from most implementations of succinct data structures is dynamism. In this paper we design, implement, and test a general framework that allows for practical dynamic succinct structures. Firstly, a key component of our approach is careful memory management, which is often overlooked in the succinct data structures literature. Most succinct data structures allocate and deallocate relatively small data blocks each time a modify, insert, or delete operation occurs. We demonstrate experimentally that the space cost of neglecting memory management can be over 25% for dynamic data structures of this type. Secondly, using our memory management approach, we describe implementations of compressed modifiable bit vectors, and extended compressed random access memory (recently proposed by Jansson, Sadakane, and Sung [ICALP 2012]). Finally, we implement and test our data structures using several popular compression libraries, and both synthetic data (for the compressed modifiable bit vector) and a real-world temporal graph (for the extended compressed random access memory). Our data structures provide an easy to use interface that allow standard algorithms (in our example, breadth-first search in a graph) to be run on top of the compressed data, decreasing memory consumption at the expense of running time.
Patrick Klitzke, Patrick K. Nicholson
ALENEX2
2016 What Links Alice and Bob?: Matching and Ranking Semantic Patterns in Heterogeneous Networks
abstract
An increasing number of applications are modeled and analyzed in network form, where nodes represent entities of interest and edges represent interactions or relationships between entities. Commonly, such relationship analysis tools assume homogeneity in both node type and edge type. Recent research has sought to redress the assumption of homogeneity and focused on mining heterogeneous information networks (HINs) where both nodes and edges can be of different types. Building on such efforts, in this work we articulate a novel approach for mining relationships across entities in such networks while accounting for user preference (prioritization) over relationship type and interestingness metric. We formalize the problem as a top-$k$ lightest paths problem, contextualized in a real-world communication network, and seek to find the $k$ most interesting path instances matching the preferred relationship type. Our solution, PROphetic HEuristic Algorithm for Path Searching (PRO-HEAPS), leverages a combination of novel graph preprocessing techniques, well designed heuristics and the venerable A* search algorithm. We run our algorithm on real-world large-scale graphs and show that our algorithm significantly outperforms a wide variety of baseline approaches with speedups as large as 100X. We also conduct a case study and demonstrate valuable applications of our algorithm.
Jiongqian Liang, Deepak Ajwani, Patrick K. Nicholson, Alessandra Sala, Srinivasan Parthasarathy 0001
WWW3
2016 Succinct Posets
J. Ian Munro, Patrick K. Nicholson
Algorithmica2
2016 Dynamic range majority data structures
Amr Elmasry, Meng He 0001, J. Ian Munro, Patrick K. Nicholson
Theor. Comput. Sci.4
2015 Encodings of Range Maximum-Sum Segment Queries and Applications
Pawel Gawrychowski, Patrick K. Nicholson
CPM2
2015 Encoding Nearest Larger Values
Patrick K. Nicholson, Rajeev Raman
CPM1
2015 Optimal Encodings for Range Top- k k , Selection, and Min-Max
Pawel Gawrychowski, Patrick K. Nicholson
ICALP (1)2
2015 Algorithms in the Ultra-Wide Word Model
Arash Farzan, Alejandro López-Ortiz, Patrick K. Nicholson, Alejandro Salinger
TAMC3
2014 Weighted Ancestors in Suffix Trees
Pawel Gawrychowski, Moshe Lewenstein, Patrick K. Nicholson
ESA3
2014 Improved Explicit Data Structures in the Bitprobe Model
Moshe Lewenstein, J. Ian Munro, Patrick K. Nicholson, Venkatesh Raman 0001
ESA3
2014 On the compression of search trees
Francisco Claude, Patrick K. Nicholson, Diego Seco Naveiras
Inf. Process. Manag.2
2013 The Distance 4-Sector of Two Points Is Unique
Robert Fraser, Meng He 0001, Akitoshi Kawamura, Alejandro López-Ortiz, J. Ian Munro, Patrick K. Nicholson
ISAAC6
2013 Range majority in constant time and linear space
Stephane Durocher, Meng He 0001, J. Ian Munro, Patrick K. Nicholson, Matthew Skala
Inf. Comput.4
2012 Differentially Encoded Search Trees
abstract
Let X = x1, x2,.... xnbe a sequence of non-decreasing integer values. Storing a compressed representation of X that supports access and search is a problem that occurs in many domains. The most common solution to this problem encodes the differences between consecutive elements in the sequence, and includes additional information (samples) to support efficient searching on the encoded values. We introduce a completely different alternative that achieves compression by encoding the differences in a search tree. Our proposal has many applications such as the representation of posting lists, geographic data, sparse bitmaps, and compressed suffix arrays, to name just a few. The structure is practical and we provide an experimental comparison to show that it is also competitive with the existing techniques.
Francisco Claude, Patrick K. Nicholson, Diego Seco Naveiras
DCC2
2012 Succinct Posets
J. Ian Munro, Patrick K. Nicholson
ESA2
2012 A Space-Efficient Framework for Dynamic Point Location
Meng He 0001, Patrick K. Nicholson, Norbert Zeh
ISAAC2
2011 Range Majority in Constant Time and Linear Space
Stephane Durocher, Meng He 0001, J. Ian Munro, Patrick K. Nicholson, Matthew Skala
ICALP (1)4
2011 Dynamic Range Majority Data Structures
Amr Elmasry, Meng He 0001, J. Ian Munro, Patrick K. Nicholson
ISAAC4
2011 Dynamic Range Selection in Linear Space
Meng He 0001, J. Ian Munro, Patrick K. Nicholson
ISAAC3
2011 Space Efficient Wavelet Tree Construction
Francisco Claude, Patrick K. Nicholson, Diego Seco Naveiras
SPIRE2
2011 Finding Frequent Elements in Compressed 2D Arrays and Strings
Travis Gagie, Meng He 0001, J. Ian Munro, Patrick K. Nicholson
SPIRE4
2011 Untangled monotonic chains and adaptive range search
Diego Arroyuelo, Francisco Claude, Reza Dorrigiv, Stephane Durocher, Meng He 0001, Alejandro López-Ortiz, J. Ian Munro, Patrick K. Nicholson, Alejandro Salinger, Matthew Skala
Theor. Comput. Sci.8
2010 Range Queries over Untangled Chains
Francisco Claude, J. Ian Munro, Patrick K. Nicholson
SPIRE3
2009 Untangled Monotonic Chains and Adaptive Range Search
Diego Arroyuelo, Francisco Claude, Reza Dorrigiv, Stephane Durocher, Meng He 0001, Alejandro López-Ortiz, J. Ian Munro, Patrick K. Nicholson, Alejandro Salinger, Matthew Skala
ISAAC8
2008 Unification of Arrays in Spreadsheets with Logic Programming
Philip T. Cox, Patrick K. Nicholson
PADL2