The European Commission and Council want to adopt a regulation that could allow Internet service providers (ISPs) to discriminate between different types of customers and different types of online content, in order to charge extra for most types of online services. Only those who pay more would have easy access to the Internet – killing the openness that drives the Internet's social and economic success.
Even though the Parliament previously insisted on respect for the rule of law and opposed arbitrary censorship, the compromise text has no obvious meaning in this regard, failing to effectively protect Internet users from censorship. The text was proposed by the UK as a means of creating confusion, allowing Britain's arbitrary, unaccountable, counterproductive Internet blocking and filtering to continue. Such power in hands of private companies would greatly damage our freedom of expression online and endangers freedom of speech and the rule of law across Europe, if accepted in this regulation.
The diversity and innovative capacity of the Internet depends upon its openness and neutrality. This risks being dramatically undermined if the regulation does not outlaw discriminatory specialised services, class based traffic management and the practice of zero-rating. We have to protect the neutral infrastructure of the Internet from discriminatory business models that try to make money with scarcity. The creation of a new monopoly allowing Internet service providers to decide who gets access to their customers and under what conditions must be prevented.
In negotiations with the EU Member States and the European Commission, representatives of the Parliament accepted a compromise text whose lack of clarity could be used by regulators to permit network discrimination. Unless the text is amended by the Parliament, it will be up to regulators and the European Commission - that did not stand for net neutrality - to give meaning to the compromise text, in the months after the Parliament's vote.
On 3rd April 2014, the European Parliament voted in favour of clear and binding rules for net neutrality. This victory was yours since many of you contacted MEPs to ask them to take a stand for the free and open Internet.
After months of delay and negotiations, on 30th June 2015, the EU institutions agreed on an incoherent, unclear text that leaves it to regulators and the European Commission to decide whether net neutrality will be protected or not. They could interpret the text in ways that allow for paid fast-lanes and kill the best effort Internet in the EU.
Now; we have one last chance to repair this dangerous and ambiguous text during the Plenary vote in the European Parliament on October 28. Now is the time to contact your MEP and tell them to stand by their decision from April 2014 and not to let big telecoms companies destroy your freedoms online. The battle over the Internet in Europe is on!
Net neutrality is the founding principle of the Internet. It guarantees that all data packets are treated equally. This principle guarantees that the Internet will remain diverse, innovative, and free. Telecoms companies want to change that. They want to establish new business models based on discrimination and restrictions. We cannot give up the economic and social value of the Internet just to help the short-term plans of a handful of companies to make more money.
We need your help to prompt Parliamentarians to protect the open and neutral Internet - ask them to protect network neutrality!
Act now to tell your representatives to protect our rights and freedoms. The best way to do this is by calling a Member of the European Parliament (MEP). But you can also send them a Fax, a letter or an E-Mail - we provide you with all the information and calling them is free of charge.
Stay polite and be yourself. Whatever happens, don't forget the basic rules of courtesy and common sense. Whether you agree or disagree with the individual answering you, and whatever the views of other members of her/his political group, don't say anything that would give a negative image of people who are advocating for net neutrality.
Most of the time, you will talk with a Parliamentary assistant, and not directly with an MEP. It's not a problem. Engage in the conversation. Assistants play an important role in the development of the MEPs' positions. If a question to which you don't have the answer comes up, don't panic.
 Tell the MEP you will research the answer and contact him/her when you have more information. Contact us to help you out via info /at/ savetheinternet.eu.
With our Fax Tool you can send your message to a Member of the European Parliament (MEP). It will be received electronically in the office of your representative. It is important that you personalize your message. Everything that we write about e-mails also applies to fax.
You can also contact your MEP by email. Their addresses are available in the mail widget above.
We prefer this approach than sending generic form emails to all MEPs. They know how to use a spam filter as well as you and those emails end up in spam folders quickly. Generic form emails give the impression that you do not want to take the time to get interested in the matter and do not reflect the number of people involved in it (a single person can send several messages). Worse, such emails increase the risk that MEPs do not read the personalized emails on the same dossier and finally hurting your cause.
The best solution is to send personalized emails based on your own views and your knowledge of the matter (Remember: you are not expected to be an expert, only a concerned citizen) and, if possible, according to the positions of the MEPs political group.
Sending a Tweet to an MEP is a very effective way of getting them involved with an issue. Twitter discussions are public, which helps you to get the politicians attention because MEPs don't want to lose a debate in public. 140 characters for one Tweet are easily written and do not take much of your time.
If you make the effort to write a text it is also helpful to send this text to the MEPs via Facebook. You can either send them a private message or even write on their Facebook page if their privacy settings allow this. To post publicly on their page about net neutrality gives the issue more traction and can spark a public discussion in our favour.


Making search better by surfacing more useful information
The Artist Detail Page (ADP) and Venue Detail Page (VDP) bring all relevant information on these topics to the forefront. Before the introduction of these features, details for artists and venues were nearly impossible to find, buried under far too many screens in the Ticketmaster app. Now presented alongside search, users have easy access to this information. I was fully responsible for these features’ designs including UX and UI.
View PDF Version


vignettes/batch_correction.Rmd
batch_correction.Rmd
For this section, we wrapped 12 methods into functions that perform batch effect correction on an SingleCellExperiment
(SCE) object and return the input SCE object with a corrected matrix updated in-place.
Here is a table for the method names, citations, corresponding wrapper functions and where the results are updated:
| Method | Citation | Function | Result Slots |
|---|---|---|---|
| BBKNN | Polański, Krzysztof and et al., 2019 | runBBKNN() |
reducedDim
|
| ComBat | Yuqing Zhang and et al., 2018 | runComBat() |
assay
|
| FastMNN | Aaron Lun, 2018 | runFastMNN() |
reducedDim
|
| MNN | Laleh Haghverdi, 2018 | runMNNCorrect() |
assay
|
| Harmony | Ilya Korsunsky and et al., 2019 | runHarmony() |
reducedDim
|
| LIGER | Joshua Welch, et al., 2018 | runLIGER() |
reducedDim
|
| Limma | Gordon K Smyth, et al., 2003 | runLimmaBC() |
assay
|
| Scanorama | Brian Hie et al, 2019 | runSCANORAMA() |
assay
|
| scGen | Mohammad Lotfollah et al., 2019 | runSCGEN() |
assay
|
| scMerge | Yingxin Lin et al., 2019 | runSCMerge() |
assay
|
| Seurat Integration | Tim Stuart et al., 2019 | runSeurat3Integration() |
altExp
|
| ZINBWaVE | Davide Risso et al., 2018 | runZINBWaVE() |
reducedDim
|
For a result returned in reducedDim
, it means that some sorts of dimension reduction method, such as PCA and UMAP, is performed during the correction. For a result returned in assay
, all of the original features (i.e. genes) remain the same, thus it is a full-sized assay. For a result returned in altExp
, it means that the values in the corrected assay still stand for the expression level of the original features, instead of any low-dimension embedding, but the number of these features are less than original due to potential subsetting steps in the calculation.
The script will automatically try to install the “singleCellTK” package from Bioconductor if not available. However, currently this code is only located on a development branch which needs to be installed from GitHub:
library(devtools) install_github("compbiomed/singleCellTK@devel")
To run the pipeline, the most basic requirements are:
As we adopt SingleCellExperiment
(sce
) object through out the whole SCTK for a collection of all matrices and metadatas of the dataset of interests, the assay to be corrected, called "assayToCorr"
, has to be saved at assay(sce, "assayToCorr")
. Meanwhile, the batch annotation information has to be saved in a column of colData(sce)
.
Note that the batch annotation should better be saved as a
factor
in thecolData
, especially when the batches are represented by integer numbers, because some downstream analysis are likely to parse the non-character and non-logical information as continuous values instead of categorical values.
Here we present an example dataset that is combined from “pbmc3k” and “pbmc4k” (Kasper D. Hansen et al., 2017), which you can import by a function called importExampleData()
.
library(singleCellTK) pbmc6k <- importExampleData('pbmc6k') pbmc8k <- importExampleData('pbmc8k') print(paste(dim(pbmc6k), c('genes', 'cells'))) print(paste(dim(pbmc8k), c('genes', 'cells')))
## [1] "32738 genes" "5419 cells"
## [1] "33694 genes" "8381 cells"
There is a function called combineSCE()
, which accepts a list of SCE objects as input and returns a combined SCE object. This function requires that the number of genes in each SCE object has to be the same, and the gene metadata (i.e. rowData
) has to match with each other if the same fields exist. Therefore, we need some pre-process for the combination. Users do not necessarily have to follow the same way, depending on how the raw datasets are provided.
## The strategy here is to only use the genes presented in both datasets. ## Get the intersection of both gene lists. isecGene <- intersect(rownames(pbmc6k), rownames(pbmc8k)) ## Subset each dataset by the intersection. pbmc6k.isec <- pbmc6k[isecGene,] pbmc8k.isec <- pbmc8k[isecGene,] ## Overwrite the mismatches in rowData, a special case in this example. rowData(pbmc8k.isec) <- rowData(pbmc6k.isec) ## Apply combination function sce.combine <- combineSCE(list(pbmc6k = pbmc6k.isec, pbmc8k = pbmc8k.isec)) ## Simply filter out the genes that are expressed in less than 1% of all cells. sce.filter <- sce.combine[rowSums(assay(sce.combine) > 0) >= 0.01 * ncol(sce.combine),] sce.filter
## class: SingleCellExperiment
## dim: 10020 13800
## metadata(0):
## assays(1): counts
## rownames(10020): AP006222.2 RP11-206L10.9 ... MT-CYB AL592183.1
## rowData names(3): ENSEMBL_ID Symbol_TENx Symbol
## colnames(13800): pbmc6k_AAACATACAACCAC-1 pbmc6k_AAACATACACCAGT-1 ...
## pbmc8k_TTTGTCATCTCGAGTA-1 pbmc8k_TTTGTCATCTGCTTGC-1
## colData names(12): Sample Barcode ... Date_published sample
## reducedDimNames(0):
## spikeNames(0):
## altExpNames(0):
The batch annotation now is stored at colData(sce.filter)$sample
. The summary can be checked by running:
table(colData(sce.filter)$sample)
##
## pbmc6k pbmc8k
## 5419 8381
Before trying out any batch correction function, we recommend to use a small subset of example so the effect can be quickly examined. Additionally, most of the batch correction methods provided require a log-normalized assay as input, so we have to make sure of this.
sce.small <- sce.filter[sample(nrow(sce.filter), 800), sample(ncol(sce.filter), 800)] sce.small <- scater_logNormCounts(inSCE = sce.small, useAssay = 'counts', logAssayName = 'logcounts') sce.small
## class: SingleCellExperiment
## dim: 800 800
## metadata(0):
## assays(2): counts logcounts
## rownames(800): RNF130 CERS4 ... ILF3 HEXB
## rowData names(3): ENSEMBL_ID Symbol_TENx Symbol
## colnames(800): pbmc8k_CGGACACCAAATTGCC-1 pbmc6k_CACTTTGACAGGAG-1 ...
## pbmc8k_GCTTGAAGTCTTGTCC-1 pbmc6k_ATGATATGGACTAC-1
## colData names(12): Sample Barcode ... Date_published sample
## reducedDimNames(0):
## spikeNames(0):
## altExpNames(0):
The basic way to run a batch correction method from SingleCellTK is to select a function for the corresponding method, input the SCE object, specify the assay to correct, and the batch annotation.
For example, here we will try the batch correction method provided by Limma, which fits a linear model to the data.
sce.small <- runLimmaBC(inSCE = sce.small, useAssay = 'logcounts', batch = 'sample', assayName = 'LIMMA') sce.small
## class: SingleCellExperiment
## dim: 800 800
## metadata(0):
## assays(3): counts logcounts LIMMA
## rownames(800): RNF130 CERS4 ... ILF3 HEXB
## rowData names(3): ENSEMBL_ID Symbol_TENx Symbol
## colnames(800): pbmc8k_CGGACACCAAATTGCC-1 pbmc6k_CACTTTGACAGGAG-1 ...
## pbmc8k_GCTTGAAGTCTTGTCC-1 pbmc6k_ATGATATGGACTAC-1
## colData names(12): Sample Barcode ... Date_published sample
## reducedDimNames(0):
## spikeNames(0):
## altExpNames(0):
In this documentation, we provide three ways to examine the removal of batch effect, in terms of visualization.
This functionality is implemented in plotBatchVariance()
. It plots a violin plot of the variation explained by the given batch annotation, an additional condition, and the variation explained by combining these two conditions.
This plot would be useful for examining whether the existing batch effect is different than another condition (e.g. subtype) or is confounded by that. However, the additional condition labels (e.g. cell types) do not necessarily exist when batch effect removal is wanted, so only plotting the variation explained by batches is also supported.
plotBatchVariance(inSCE = sce.small, useAssay = 'logcounts', batch = 'sample', title = 'Variation Before Correction')
plotBatchVariance(inSCE = sce.small, useAssay = 'LIMMA', batch = 'sample', title = 'Variation After Correction')
This functionality is implemented in plotSCEBatchFeatureMean()
. The methodology is straight forward, which plots violin plots for all the batches, and within each batch, the plot illustrates the distribution of the mean expression level of each gene. Thus the batch effect can be observed from the mean and standard deviation of each batch.
There is no function special for batch correction, but this can be achieved simply by using the dimension reduction calculation functions (e.g. getPCA()
, getUMAP()
and getTSNE()
) and plotSCEDimReduceColData()
.
sce.small <- getPCA(inSCE = sce.small, useAssay = 'logcounts', reducedDimName = 'PCA') plotSCEDimReduceColData(inSCE = sce.small, colorBy = 'sample', reducedDimName = 'PCA', title = 'PCA Before Correction')
sce.small <- getPCA(inSCE = sce.small, useAssay = 'LIMMA', reducedDimName = 'PCA_LIMMA') plotSCEDimReduceColData(inSCE = sce.small, colorBy = 'sample', reducedDimName = 'PCA_LIMMA', title = 'PCA After Correction')
The batch correction functionality is implemented under the tab “Normalization & Batch Correction”, as shown in figure below, which is a sidebar layout.
The correction is done with the settings in the sidebar on the left side. Users have to choose the assay to correct, the annotation for the batches, and the method to invoke. Below the method selection, users will be given alternative parameters specific to the method selected. The last text input is always for the name of the result, and its label indicates whether the result is updated as reducedDim
, assay
, or altExp
. Duplicated names will automatically be overwritten without warning. After confirming all parameters, press “Run” to run the correction.
The visualization check is implemented in the main panel on the right, with four plotting region and a list of settings. The plots are done in the exactly same way as Method 2 and 3 described above. After choosing the original assay used, batch annotation used, and the name of the result to check, press “Plot” to update the visualization.


To browse and manage
List of Students or
to register
a new student, please first make sure to read the
instructions and key points provided below. And then click the
appropriate menu item, located on the menu-bar above.
Lorem Ipsum is simply dummy text of the printing and typesetting
industry. Lorem Ipsum has been the industry's standard dummy text
ever since the 1500s, when an unknown printer took a galley of type
and scrambled it to make a type specimen book. It has survived not
only five centuries, but also the leap into electronic typesetting,
remaining essentially unchanged. It was popularised in the 1960s with
the release of Letraset sheets containing Lorem Ipsum passages, and
more recently with desktop publishing software like Aldus PageMaker
including versions of Lorem Ipsum.
Already have access as a Member, Librarian or System Administrator? Then, simply Sign-In.
to access the full range of services available to you, based on your role and access rights.


These are the necessary steps:
Insert key
Turn key
clockwise
Push accelerator
Do
not
push the brake at the same time as the accelerator.


@inproceedings{Kuessner2023algebraic, author = {Kuessner, Christian and Mogk, Ragnar and Wickert, Anna-Katharina and Mezini, Mira}, title = {Algebraic Replicated Data Types: Programming Secure Local-First Software}, booktitle = {37th European Conference on Object-Oriented Programming}, pages = {14:1--14:33}, series = {ECOOP 2023}, year = {2023}, month = jul, publisher = {Schloss Dagstuhl}, doi = {10.4230/LIPIcs.ECOOP.2023.14}, keywords = {delta-based, state-based, composition, security} }
@inproceedings{Haas2023LoRe, author = {Haas, Julian and Mogk, Ragnar and Yanakieva, Elena and Bieniusa, Annette and Mezini, Mira}, title = {{LoRe}: A Programming Model for Verifiably Safe Local-First Software}, booktitle = {37th European Conference on Object-Oriented Programming}, pages = {12:1--12:15}, series = {ECOOP 2023}, year = {2023}, month = jul, publisher = {Schloss Dagstuhl}, doi = {10.4230/LIPIcs.ECOOP.2023.12}, eprint = {2304.07133}, keywords = {verification, systems, reactive programming} }
@inproceedings{DePorre2023VeriFx, author = {De Porre, Kevin and Ferreira, Carla and Gonzalez Boix, Elisa}, title = {{VeriFx}: Correct Replicated Data Types for the Masses}, booktitle = {37th European Conference on Object-Oriented Programming}, pages = {9:1--9:45}, series = {ECOOP 2023}, year = {2023}, month = jul, publisher = {Schloss Dagstuhl}, doi = {10.4230/LIPIcs.ECOOP.2023.9}, eprint = {2207.02502}, keywords = {verification, state-based, delta-based, operation-based, pure operation-based} }
@inproceedings{Bauwens2023nested, author = {Bauwens, Jim and Gonzalez Boix, Elisa}, title = {Nested Pure Operation-Based {CRDTs}}, booktitle = {37th European Conference on Object-Oriented Programming}, pages = {2:1--2:26}, series = {ECOOP 2023}, year = {2023}, month = jul, publisher = {Schloss Dagstuhl}, doi = {10.4230/LIPIcs.ECOOP.2023.2}, keywords = {composition, pure operation-based} }
@article{Lavoie2023bftlog, title = {{2P-BFT-Log}: 2-Phase Single-Author Append-Only Log for Adversarial Environments}, author = {Lavoie, Erick}, year = {2023}, month = jul, eprint = {2307.08381}, url = {https://arxiv.org/abs/2307.08381}, keywords = {state-based, security} }
@inproceedings{Liittschwager2023coalgebra, author = {Liittschwager, Nathan and Tsampas, Stelios and Castello, Jonathan and Kuper, Lindsey}, title = {{CRDTs}, Coalgebraically (Early Ideas)}, booktitle = {10th Conference on Algebra and Coalgebra in Computer Science}, series = {CALCO 2023}, year = {2023}, month = jun, url = {https://users.soe.ucsc.edu/~lkuper/papers/crdts-coalgebraically-calco23.pdf}, keywords = {specification, theory} }
@article{Lavoie2023gocledger, author = {Lavoie, Erick}, title = {{GOC-Ledger}: State-based Conflict-Free Replicated Ledger from Grow-Only Counters}, year = {2023}, month = may, eprint = {2305.16976}, url = {https://arxiv.org/abs/2305.16976}, keywords = {state-based, security} }
@inproceedings{Nieto2023modular, author = {Nieto, Abel and Daby-Seesaram, Arnaud and Gondelman, Léon and Timany, Amin and Birkedal, Lars}, title = {Modular Verification of State-Based {CRDTs} in Separation Logic}, booktitle = {37th European Conference on Object-Oriented Programming}, series = {ECOOP 2023}, year = {2023}, month = jul, publisher = {Schloss Dagstuhl}, doi = {10.4230/LIPIcs.ECOOP.2023.12}, url = {https://iris-project.org/pdfs/2023-ecoop-crdts.pdf}, keywords = {specification, verification, state-based} }
@article{Zakhour2023Propel, author = {Zakhour, George and Weisenburger, Pascal and Salvaneschi, Guido}, title = {Type-Checking {CRDT} Convergence}, journal = {Proceedings of the ACM on Programming Languages}, volume = {7}, number = {PLDI}, articleno = {162}, year = {2023}, month = jun, pdf = {https://programming-group.com/assets/pdf/papers/2023_Type-Checking-CRDT-Convergence.pdf}, doi = {10.1145/3591276}, keywords = {verification, computation, Propel} }
@inproceedings{Fernandes2023causal, author = {Fernandes, Pedro Henrique and Baquero, Carlos}, title = {Probabilistic Causal Contexts for Scalable {CRDTs}}, booktitle = {10th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2023}, pages = {1–8}, year = {2023}, month = may, publisher = {ACM}, doi = {10.1145/3578358.3591331}, keywords = {causal-consistency} }
@inproceedings{Yanakieva2023spreadsheets, author = {Yanakieva, Elena and Bird, Philipp and Bieniusa, Annette}, title = {A Study of Semantics for {CRDT}-Based Collaborative Spreadsheets}, booktitle = {10th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2023}, pages = {37–43}, year = {2023}, month = may, publisher = {ACM}, doi = {10.1145/3578358.3591324}, keywords = {composition, systems} }
@inproceedings{Jeffery2023AMC, author = {Jeffery, Andrew and Mortier, Richard}, title = {{AMC}: Towards Trustworthy and Explorable {CRDT} Applications with the {Automerge Model Checker}}, booktitle = {10th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2023}, pages = {44–50}, year = {2023}, month = may, publisher = {ACM}, doi = {10.1145/3578358.3591326}, pdf = {https://api.repository.cam.ac.uk/server/api/core/bitstreams/e0f9f934-9e79-4485-8745-f0a3191ff70c/content}, keywords = {verification, computation, systems, AMC} }
@inproceedings{Bauwens2023NLP, author = {Bauwens, Jim and De Porre, Kevin and Gonzalez Boix, Elisa}, title = {[Short Paper] {T}owards Improved Collaborative Text Editing {CRDTs} by Using Natural Language Processing}, booktitle = {10th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2023}, pages = {51–55}, year = {2023}, month = may, publisher = {ACM}, doi = {10.1145/3578358.3591330}, keywords = {text-editing} }
@inproceedings{Weidner2023foreach, author = {Weidner, Matthew and Pradeep, Ria and Geordie, Benito and Miller, Heather}, title = {For-Each Operations in Collaborative Apps}, booktitle = {10th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2023}, pages = {56–62}, year = {2023}, month = may, publisher = {ACM}, eprint = {2304.03141}, doi = {10.1145/3578358.3591323}, keywords = {composition} }
@inproceedings{Jacob2023byzantine, author = {Jacob, Florian and Hartenstein, Hannes}, title = {On Extend-Only Directed Posets and Derived {Byzantine}-Tolerant Replicated Data Types}, booktitle = {10th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2023}, pages = {63–69}, year = {2023}, month = may, publisher = {ACM}, eprint = {2304.04318}, doi = {10.1145/3578358.3591333}, keywords = {security, causal-consistency} }
@inproceedings{Zhang2023experience, author = {Zhang, Yicheng and Weidner, Matthew and Miller, Heather}, title = {Programmer Experience When Using {CRDTs} to Build Collaborative Webapps: Initial Insights}, booktitle = {13th Annual Workshop on the Intersection of HCI and PL}, series = {PLATEAU 2023}, year = {2023}, month = feb, pdf = {https://kilthub.cmu.edu/articles/conference_contribution/Programmer_Experience_When_Using_CRDTs_to_Build_Collaborative_Webapps_Initial_Insights/22277341/1}, doi = {10.1184/R1/22277341.v1}, keywords = {user-study, computation, composition} }
@article{Guidec2022opportunistic, author = {Guidec, Frédéric and Mahéo, Yves and Noûs, Camille}, title = {Supporting conflict-free replicated data types in opportunistic networks}, journal = {Peer-to-Peer Networking and Applications}, volume = {16}, pages = {395–419}, year = {2023}, month = jan, publisher = {Springer}, doi = {10.1007/s12083-022-01404-6}, keywords = {systems, networks} }
@article{Laddad2022CALM, author = {Laddad, Shadaj and Power, Conor and Milano, Mae and Cheung, Alvin and Crooks, Natacha and Hellerstein, Joseph M.}, title = {Keep {CALM} and {CRDT} On}, journal = {Proceedings of the VLDB Endowment}, volume = {16}, number = {4}, pages = {856–863}, year = {2022}, month = dec, eprint = {2210.12605}, doi = {10.14778/3574245.3574268}, url = {https://www.vldb.org/pvldb/vol16/p856-power.pdf}, keywords = {computation, crdt-related} }
@inproceedings{Tschudin2022connectionless, author = {Tschudin, Christian}, title = {A Connectionless Grow-Only Set {CRDT}}, booktitle = {3rd International Workshop on Distributed Infrastructure for the Common Good}, series = {DICG 2022}, pages = {25–30}, year = {2022}, month = nov, publisher = {ACM}, pdf = {https://dicg-workshop.github.io/2022/papers/tschudin.pdf}, doi = {10.1145/3565383.3566110}, keywords = {delta-based, set-crdt} }
@inproceedings{Jannes2022secure, author = {Jannes, Kristof and Lagaisse, Bert and Joosen, Wouter}, title = {Secure Replication for Client-Centric Data Stores}, booktitle = {3rd International Workshop on Distributed Infrastructure for the Common Good}, series = {DICG 2022}, year = {2022}, month = nov, pages = {31--36}, publisher = {ACM}, pdf = {https://kristofjannes.com/papers/dicg22.pdf}, doi = {10.1145/3565383.3566111}, keywords = {state-based, systems, security} }
@article{Litt2022peritext, author = {Litt, Geoffrey and Lim, Sarah and Kleppmann, Martin and van Hardenberg, Peter}, title = {Peritext: A {CRDT} for Collaborative Rich Text Editing}, journal = {Proceedings of the ACM on Human-Computer Interaction}, volume = {6}, number = {CSCW2}, articleno = {531}, year = {2022}, month = nov, publisher = {ACM}, doi = {10.1145/3555644}, pdf = {https://www.inkandswitch.com/peritext/static/cscw-publication.pdf}, keywords = {text-editing, systems} }
@article{Laddad2022lifting, author = {Laddad, Shadaj and Power, Conor and Milano, Mae and Cheung, Alvin and Hellerstein, Joseph M.}, title = {Katara: Synthesizing {CRDTs} with Verified Lifting}, journal = {Proceedings of the ACM on Programming Languages}, volume = {6}, number = {OOPSLA2}, articleno = {173}, pages = {1349-1377}, year = {2022}, month = oct, publisher = {ACM}, doi = {10.1145/3563336}, eprint = {2205.12425}, url = {https://www.shadaj.me/papers/katara.pdf}, keywords = {specification, verification} }
@article{Nieto2022modular, author = {Nieto, Abel and Gondelman, Léon and Reynaud, Alban and Timany, Amin and Birkedal, Lars}, title = {Modular Verification of Op-Based {CRDTs} in Separation Logic}, journal = {Proceedings of the ACM on Programming Languages}, volume = {6}, number = {OOPSLA2}, articleno = {188}, year = {2022}, month = oct, pages = {1788–1816}, publisher = {ACM}, doi = {10.1145/3563351}, url = {https://iris-project.org/pdfs/2022-oopsla-crdts.pdf}, keywords = {specification, verification, operation-based} }
@article{Kleppmann2022convergence, author = {Kleppmann, Martin and Alvaro, Peter}, title = {Research for Practice: Convergence}, journal = {Communications of the ACM}, volume = {65}, number = {11}, pages = {104-106}, year = {2022}, month = nov, publisher = {ACM}, doi = {10.1145/3563901}, pdf = {https://martin.kleppmann.com/papers/convergence-cacm.pdf}, keywords = {introduction, crdt-related} }
@inproceedings{Soundarapandian2022MRDT, author = {Soundarapandian, Vimala and Kamath, Adharsh and Nagar, Kartik and Sivaramakrishnan, KC}, title = {Certified Mergeable Replicated Data Types}, booktitle = {43rd ACM SIGPLAN Conference on Programming Language Design and Implementation}, series = {PLDI 2022}, year = {2022}, month = jun, pages = {332–347}, publisher = {ACM}, eprint = {2203.14518}, doi = {10.1145/3519939.3523735}, keywords = {crdt-related, MRDT, verification} }
@inproceedings{Houshmand2022RDMA, author = {Houshmand, Farzin and Saberlatibari, Javad and Lesani, Mohsen}, title = {Hamband: {RDMA} Replicated Data Types}, booktitle = {43rd ACM SIGPLAN Conference on Programming Language Design and Implementation}, series = {PLDI 2022}, year = {2022}, month = jun, pages = {348–363}, publisher = {ACM}, doi = {10.1145/3519939.3523426}, keywords = {crdt-related, systems} }
@inproceedings{Kaki2022MRDT, author = {Kaki, Gowtham and Prahladan, Prasanth and Lewchenko, Nicholas V.}, title = {RunTime-Assisted Convergence in Replicated Data Types}, booktitle = {43rd ACM SIGPLAN Conference on Programming Language Design and Implementation}, series = {PLDI 2022}, year = {2022}, month = jun, pages = {364–378}, publisher = {ACM}, doi = {10.1145/3519939.3523724}, keywords = {crdt-related, MRDT, Quark} }
@techreport{Kleppmann2022buggy, author = {Kleppmann, Martin}, title = {Assessing the understandability of a distributed algorithm by tweeting buggy pseudocode}, year = {2022}, month = may, institution = {University of Cambridge, Department of Computer Science and Technology}, number = {UCAM-CL-TR-969}, doi = {10.48456/tr-969}, pdf = {https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-969.pdf}, keywords = {verification} }
@inproceedings{Jacob2022byzantine, author = {Jacob, Florian and Bayreuther, Saskia and Hartenstein, Hannes}, title = {On {CRDTs} in {Byzantine} Environments}, booktitle = {GI Sicherheit 2022}, year = 2022, month = apr, pages = {113--126}, publisher = {Gesellschaft für Informatik, Bonn}, doi = {10.18420/sicherheit2022_07}, pdf = {https://dl.gi.de/server/api/core/bitstreams/c0813c74-49cf-46ec-9f39-7d89f02f2a85/content}, keywords = {security} }
@inproceedings{Brocco2022melda, author = {Brocco, Amos}, title = {Melda: A General Purpose Delta State {JSON} {CRDT}}, booktitle = {9th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2022}, year = {2022}, month = apr, pages = {1--7}, publisher = {ACM}, doi = {10.1145/3517209.3524039}, keywords = {systems, delta-based, JSON} }
@inproceedings{Kleppmann2022byzantine, author = {Kleppmann, Martin}, title = {Making {CRDTs} {Byzantine} Fault Tolerant}, booktitle = {9th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2022}, year = {2022}, month = apr, pages = {8--15}, publisher = {ACM}, pdf = {https://martin.kleppmann.com/papers/bft-crdt-papoc22.pdf}, doi = {10.1145/3517209.3524042}, keywords = {security} }
@inproceedings{Schiefer2022fork, author = {Schiefer, Nicholas and Litt, Geoffrey and Jackson, Daniel}, title = {Merge What You Can, Fork What You Can't: Managing Data Integrity in Local-First Software}, booktitle = {9th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2022}, year = {2022}, month = apr, pages = {24--32}, publisher = {ACM}, doi = {10.1145/3517209.3524041}, keywords = {systems, usability} }
@inproceedings{Rault2022accessControl, author = {Rault, Pierre-Antoine and Ignat, Claudia-Lavinia and Perrin, Olivier}, title = {Distributed Access Control for Collaborative Applications Using {CRDTs}}, booktitle = {9th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2022}, year = {2022}, month = apr, pages = {33--38}, publisher = {ACM}, pdf = {https://hal.inria.fr/hal-03584553/file/papoc.pdf}, doi = {10.1145/3517209.3524826}, keywords = {security} }
@inproceedings{Saquib2022versionTrees, author = {Saquib, Nazmus and Krintz, Chandra and Wolski, Rich}, title = {Ordering Operations for Generic Replicated Data Types Using Version Trees}, booktitle = {9th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2022}, year = {2022}, month = apr, pages = {39--46}, publisher = {ACM}, doi = {10.1145/3517209.3524038}, keywords = {crdt-related} }
@inproceedings{Weidner2022counter, author = {Weidner, Matthew and Almeida, Paulo S\'{e}rgio}, title = {An Oblivious Observed-Reset Embeddable Replicated Counter}, booktitle = {9th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2022}, year = {2022}, month = apr, pages = {47--52}, publisher = {ACM}, pdf = {https://mattweidner.com/assets/pdf/Embeddable_counter_CRDT.pdf}, doi = {10.1145/3517209.3524084}, keywords = {counters} }
@article{Rinberg2022DSON, author = {Rinberg, Arik and Solomon, Tomer and Shlomo, Roee and Khazma, Guy and Lushi, Gal and Keidar, Idit and Ta-Shma, Paula}, title = {{DSON}: {JSON CRDT} Using Delta-Mutations for Document Stores}, journal = {Proceedings of the VLDB Endowment}, volume = {15}, number = {5}, pages = {1053–1065}, year = {2022}, month = jan, pdf = {https://www.vldb.org/pvldb/vol15/p1053-rinberg.pdf}, doi = {10.14778/3510397.3510403}, keywords = {systems, trees} }
@inproceedings{Brocco2021json, author = {Brocco, Amos}, title = {Delta-State {JSON} {CRDT}: Putting Collaboration on Solid Ground}, booktitle = {23rd International Symposium on Stabilization, Safety, and Security of Distributed Systems}, series = {SSS 2021}, year = {2021}, month = nov, publisher = {Springer LNCS volume 13046}, pages = {474-478}, doi = {10.1007/978-3-030-91081-5_32}, keywords = {systems, delta-based, JSON, Solid} }
@article{Kleppmann2021move, author = {Kleppmann, Martin and Mulligan, Dominic P. and Gomes, Victor B. F. and Beresford, Alastair R.}, title = {A highly-available move operation for replicated trees}, journal = {IEEE Transactions on Parallel and Distributed Systems}, volume = {33}, number = {7}, pages = {1711--1724}, year = {2021}, month = oct, publisher = {IEEE}, doi = {10.1109/TPDS.2021.3118603}, pdf = {https://martin.kleppmann.com/papers/move-op.pdf}, keywords = {trees, verification} }
@article{DePorre2021ecros, author = {De Porre, Kevin and Ferreira, Carla and Pregui\c{c}a, Nuno and Gonzalez Boix, Elisa}, title = {{ECROs}: Building Global Scale Systems from Sequential Code}, journal = {Proceedings of the ACM on Programming Languages (PACMPL)}, volume = {5}, number = {OOPSLA}, articleno = {107}, year = {2021}, month = oct, publisher = {ACM}, doi = {10.1145/3485484}, keywords = {crdt-related} }
@inproceedings{Brattli2021undo, author = {Brattli, Eric and Yu, Weihai}, title = {Supporting Undo and Redo for Replicated Registers in Collaborative Applications}, booktitle = {18th International Conference on Cooperative Design, Visualization, and Engineering}, series = {CDVE 2021}, year = {2021}, month = oct, pages = {195-205}, publisher = {Springer LNCS volume 12983}, doi = {10.1007/978-3-030-88207-5_19}, keywords = {undo} }
@article{Jannes2021owebsync, author = {Jannes, Kristof and Lagaisse, Bert and Joosen, Wouter}, title = {{OWebSync}: Seamless Synchronization of Distributed Web Clients}, journal = {IEEE Transactions on Parallel and Distributed Systems}, volume = {32}, number = {9}, year = {2021}, month = sep, pages = {2338-2351}, publisher = {IEEE}, doi = {10.1109/TPDS.2021.3066276}, pdf = {https://kristofjannes.com/papers/tpds_owebsync.pdf}, keywords = {state-based, synchronisation protocols, JSON, systems, OWebSync} }
@inproceedings{Tomter2021sqlite, author = {Tomter, Iver Toft and Yu, Weihai}, title = {Augmenting {SQLite} for Local-First Software}, booktitle = {European Conference on Advances in Databases and Information Systems}, series = {ADBIS 2021}, year = {2021}, month = aug, pages = {247-257}, publisher = {Springer}, doi = {10.1007/978-3-030-85082-1_22}, pdf = {https://munin.uit.no/bitstream/handle/10037/24430/article.pdf}, keywords = {systems, relational, SQLite} }
@phdthesis{Nair2021PhD, author = {Nair, Sreeja Sasidharan}, title = {Designing safe and highly available distributed applications}, school = {Sorbonne Universit{\'e}}, year = {2021}, month = jul, url = {https://theses.hal.science/tel-03339393}, keywords = {verification, trees, Soteria, Maram} }
@inproceedings{Cholvi2021bdso, author = {Cholvi, Vicent and Fern\'{a}ndez Anta, Antonio and Georgiou, Chryssis and Nicolaou, Nicolas and Raynal, Michel and Russo, Antonio}, title = {Byzantine-Tolerant Distributed Grow-Only Sets: Specification and Applications}, booktitle = {4th International Symposium on Foundations and Applications of Blockchain}, series = {FAB 2021}, pages = {2:1--2:19}, year = {2021}, volume = {92}, publisher = {Schloss Dagstuhl}, doi = {10.4230/OASIcs.FAB.2021.2}, eprint = {2103.08936}, keywords = {security, set-crdt} }
@inproceedings{Yactine2021ASPAS, author = {Yactine, Houssam and Shoker, Ali and Younes, Georges}, title = {{ASPAS}: As Secure as Possible Available Systems}, booktitle = {21st International Conference on Distributed Applications and Interoperable Systems}, series = {DAIS 2021}, year = {2021}, month = jun, pages = {57-73}, publisher = {Springer}, doi = {10.1007/978-3-030-78198-9_4}, pdf = {https://repositorio.inesctec.pt/server/api/core/bitstreams/cc430163-343b-4e72-b384-aa919a36b2b1/content}, keywords = {systems, security} }
@mastersthesis{Brattli2021thesis, author = {Brattli, Eric}, title = {Supporting Undo and Redo for Local-First Software: An Implementation in {Automerge}}, school = {UiT The Arctic University of Norway}, year = {2021}, month = jun, number = {INF-3981}, pdf = {https://munin.uit.no/bitstream/handle/10037/22345/thesis.pdf}, keywords = {undo} }
@inproceedings{Yanakieva2021accesscontrol, author = {Yanakieva, Elena and Youssef, Michael and Rezae, Ahmad Hussein and Bieniusa, Annette}, title = {Access Control Conflict Resolution in Distributed File Systems Using {CRDTs}}, booktitle = {8th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2021}, articleno = {1}, year = {2021}, month = apr, publisher = {ACM}, doi = {10.1145/3447865.3457970}, keywords = {filesystem, Repliss, access control} }
@inproceedings{Rinberg2021array, author = {Rinberg, Arik and Solomon, Tomer and Khazma, Guy and Lushi, Gal and Shlomo, Roee and Ta-Shma, Paula}, title = {Array {CRDTs} Using Delta-Mutations}, booktitle = {8th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2021}, articleno = {3}, year = {2021}, month = apr, publisher = {ACM}, doi = {10.1145/3447865.3457971}, keywords = {list-crdt, delta-based, JSON} }
@inproceedings{Bauwens2021reactivity, author = {Bauwens, Jim and Boix, Elisa Gonzalez}, title = {Improving the Reactivity of Pure Operation-Based {CRDTs}}, booktitle = {8th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2021}, articleno = {4}, year = {2021}, month = apr, publisher = {ACM}, doi = {10.1145/3447865.3457968}, keywords = {pure operation-based, systems, Flec} }
@inproceedings{Litt2021cambria, author = {Litt, Geoffrey and Hardenberg, Peter van and Henry, Orion}, title = {{Cambria}: Schema Evolution in Distributed Systems with Edit Lenses}, booktitle = {8th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2021}, articleno = {8}, year = {2021}, month = apr, publisher = {ACM}, doi = {10.1145/3447865.3457963}, keywords = {schemas, systems, Cambria} }
@article{Nair2021Maram, author = {Nair, Sreeja and Meirim, Filipe and Pereira, Mário and Ferreira, Carla and Shapiro, Marc}, title = {A coordination-free, convergent, and safe replicated tree}, year = {2021}, month = mar, eprint = {2103.04828}, url = {https://arxiv.org/abs/2103.04828}, keywords = {trees, Maram} }
@inproceedings{Barbosa2021secure, author = {Barbosa, Manuel and Ferreira, Bernardo and Marques, Jo\~{a}o and Portela, Bernardo and Pregui\c{c}a, Nuno}, title = {Secure Conflict-Free Replicated Data Types}, booktitle = {International Conference on Distributed Computing and Networking 2021}, series = {ICDCN 2021}, year = {2021}, month = jan, pages = {6--15}, publisher = {ACM}, doi = {10.1145/3427796.3427831}, pdf = {https://repositorio.inesctec.pt/bitstream/123456789/12112/1/P-00T-BT2.pdf}, keywords = {security, Antidote} }
@article{Kleppmann2020byzantine, author = {Kleppmann, Martin and Howard, Heidi}, title = {Byzantine Eventual Consistency and the Fundamental Limits of Peer-to-Peer Databases}, year = {2020}, month = dec, eprint = {2012.00472}, url = {https://arxiv.org/abs/2012.00472}, keywords = {security, causal-consistency} }
@article{Liu2020haskell, author = {Liu, Yiyun and Parker, James and Redmond, Patrick and Kuper, Lindsey and Hicks, Michael and Vazou, Niki}, title = {Verifying Replicated Data Types with Typeclass Refinements in {Liquid Haskell}}, journal = {Proceedings of the ACM on Programming Languages}, volume = {4}, number = {OOPSLA}, articleno = {216}, year = {2020}, month = {nov}, publisher = {ACM}, doi = {10.1145/3428284}, keywords = {verification} }
@inproceedings{Bauwens2020gc, author = {Bauwens, Jim and Gonzalez Boix, Elisa}, title = {From Causality to Stability: Understanding and Reducing Meta-Data in {CRDTs}}, booktitle = {17th International Conference on Managed Programming Languages and Runtimes}, series = {MPLR 2020}, year = {2020}, month = nov, pages = {3--14}, publisher = {ACM}, doi = {10.1145/3426182.3426183}, pdf = {https://soft.vub.ac.be/~jibauwen/publications/mplr20-from-causality-to-stability-jimbauwens.pdf}, keywords = {operation-based, systems, Flec} }
@inproceedings{Yu2020relations, author = {Yu, Weihai and Ignat, Claudia-Lavinia}, title = {Conflict-Free Replicated Relations for Multi-Synchronous Database Management at Edge}, booktitle = {IEEE International Conference on Smart Data Services}, series = {SMDS 2020}, year = {2020}, month = oct, pages = {113--121}, publisher = {IEEE}, doi = {10.1109/SMDS49396.2020.00021}, pdf = {https://hal.inria.fr/hal-02983557/}, keywords = {relational database,delta-crdt,integrity constraints} }
@article{DePorre2020cscript, author = {De Porre, Kevin and Myter, Florian and Scholliers, Christophe and Gonzalez Boix, Elisa}, title = {{CScript}: A distributed programming language for building mixed-consistency applications}, journal = {Journal of Parallel and Distributed Computing volume 144}, pages = {109-123}, year = {2020}, month = oct, issn = {0743-7315}, doi = {10.1016/j.jpdc.2020.05.010}, pdf = {http://soft.vub.ac.be/Publications/2020/vub-tr-soft-20-04.pdf}, keywords = {computation, composition, systems, CScript} }
@article{Weidner2020composing, author = {Weidner, Matthew and Miller, Heather and Meiklejohn, Christopher}, title = {Composing and Decomposing Op-Based {CRDTs} with Semidirect Products}, booktitle = {25th ACM SIGPLAN International Conference on Functional Programming}, series = {ICFP 2020}, year = {2020}, month = aug, publisher = {ACM}, eprint = {2004.04303}, doi = {10.1145/3408976}, pdf = {https://dl.acm.org/doi/pdf/10.1145/3408976}, keywords = {composition, operation-based} }
@inproceedings{Dolan2020undoable, author = {Dolan, Stephen}, title = {Brief Announcement: The Only Undoable {CRDTs} Are Counters}, year = {2020}, month = aug, booktitle = {39th Symposium on Principles of Distributed Computing}, series = {PODC 2020}, pages = {57–58}, publisher = {ACM}, doi = {10.1145/3382734.3405749}, eprint = {2006.10494}, keywords = {set-crdt, counters, undo} }
@mastersthesis{Blau2020delta, author = {Blau, Taylor}, title = {Verifying Strong Eventual Consistency in $\delta$-CRDTs}, year = {2020}, month = jun, school = {University of Washington}, type = {Bachelor's Thesis}, eprint = {2006.09823}, keywords = {state-based, verification} }
@inproceedings{Kleppmann2020moving, author = {Kleppmann, Martin}, title = {Moving Elements in List {CRDTs}}, booktitle = {7th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2020}, year = {2020}, month = apr, publisher = {ACM}, articleno = {4}, doi = {10.1145/3380787.3393677}, pdf = {https://martin.kleppmann.com/papers/list-move-papoc20.pdf}, keywords = {text-editing} }
@inproceedings{Yu2020causalLengths, author = {Yu, Weihai and Rostad, Sigbj\o{}rn}, title = {A Low-Cost Set {CRDT} Based on Causal Lengths}, booktitle = {7th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2020}, year = {2020}, month = apr, publisher = {ACM}, articleno = {5}, doi = {10.1145/3380787.3393678}, keywords = {set-crdt} }
@inproceedings{Grosch2020AutoCouch, author = {Grosch, Pascal and Krafft, Roman and W\"{o}lki, Marcel and Bieniusa, Annette}, title = {{AutoCouch}: A {JSON} {CRDT} Framework}, booktitle = {7th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2020}, year = {2020}, month = apr, publisher = {ACM}, articleno = {6}, doi = {10.1145/3380787.3393679}, keywords = {systems, Automerge, AutoCouch} }
@inproceedings{Grishchenko2020Chronofold, author = {Grishchenko, Victor and Patrakeev, Mikhail}, title = {{Chronofold}: A Data Structure for Versioned Text}, booktitle = {7th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2020}, year = {2020}, month = apr, publisher = {ACM}, articleno = {7}, doi = {10.1145/3380787.3393680}, eprint = {2002.09511}, keywords = {text-editing, Chronofold} }
@inproceedings{Nicolas2020renaming, author = {Nicolas, Matthieu and Oster, G\'{e}rald and Perrin, Olivier}, title = {Efficient Renaming in Sequence {CRDTs}}, booktitle = {7th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2020}, year = {2020}, month = apr, publisher = {ACM}, articleno = {9}, doi = {10.1145/3380787.3393682}, pdf = {https://hal.inria.fr/hal-02526724/document}, keywords = {text-editing, LogootSplit} }
@inproceedings{vanHardenberg2020PushPin, author = {van Hardenberg, Peter and Kleppmann, Martin}, title = {{PushPin}: Towards Production-Quality Peer-to-Peer Collaboration}, booktitle = {7th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2020}, year = {2020}, month = apr, publisher = {ACM}, articleno = {10}, doi = {10.1145/3380787.3393683}, pdf = {https://martin.kleppmann.com/papers/pushpin-papoc20.pdf}, keywords = {systems, usability, PushPin} }
@inproceedings{Bauwens2020Flec, author = {Bauwens, Jim and Gonzalez Boix, Elisa}, title = {{Flec}: A Versatile Programming Framework for Eventually Consistent Systems}, booktitle = {7th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2020}, year = {2020}, month = apr, publisher = {ACM}, articleno = {12}, doi = {10.1145/3380787.3393685}, keywords = {systems, Flec} }
@article{Sanjuan2020Merkle, author = {Sanjuan, Hector and Poyhtari, Samuli and Teixeira, Pedro and Psaras, Ioannis}, title = {{Merkle-CRDTs}: {Merkle-DAGs} meet {CRDTs}}, year = {2020}, month = apr, eprint = {2004.00107}, url = {https://arxiv.org/abs/2004.00107}, keywords = {security, logical-clocks} }
@techreport{Shoker2019LiRA, author = {Shoker, Ali and Almeida, Paulo S{\'e}rgio and Baquero, Carlos and Bieniusa, Annette and Centelles, Roger Pueyo and Costa, Pedro {\'A}kos and Enes, Vitor and Ferreira, Carla and Fouto, Pedro and Freitag, Felix and King, Bradley and Kopestenski, Igor and Kostopoulos, Giorgos and Leit\~{a}o, Jo\~{a}o and Lindberg, Adam and van der Linde, Albert and Nair, Sreeja and Pregui\c{c}a, Nuno and Selimi, Mennan and Shapiro, Marc and Stritzinger, Peer and Toumlilt, Ilyas and Van Roy, Peter and Vasilas, Dimitrios and Younes, Georges and Zavalyshyn, Igor and Zeller, Peter}, title = {{LightKone} Reference Architecture ({LiRA})}, year = {2019}, institution = {The LightKone Consortium}, doi = {10.13140/RG.2.2.25812.32643}, url = {https://www.researchgate.net/publication/347522020_LightKone_Reference_Architecture_LiRA}, keywords = {architecture} }
@inproceedings{Yu2019undo, author = {Yu, Weihai and Elvinger, Victorien and Ignat, Claudia-Lavinia}, title = {A Generic Undo Support for State-Based {CRDTs}}, booktitle = {23rd International Conference on Principles of Distributed Systems}, series = {OPODIS 2019}, year = {2019}, month = nov, publisher = {Dagstuhl LIPIcs}, articleno = {14}, doi = {10.4230/LIPIcs.OPODIS.2019.14}, pdf = {https://drops.dagstuhl.de/opus/volltexte/2020/11800/pdf/LIPIcs-OPODIS-2019-14.pdf}, keywords = {state-based, undo} }
@inproceedings{Kleppmann2019localfirst, author = {Kleppmann, Martin and Wiggins, Adam and van Hardenberg, Peter and McGranaghan, Mark}, title = {Local-First Software: You own your data, in spite of the cloud}, booktitle = {ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software}, series = {Onward! 2019}, year = {2019}, month = oct, publisher = {ACM}, pages = {154--178}, doi = {10.1145/3359591.3359737}, pdf = {https://martin.kleppmann.com/papers/local-first.pdf}, keywords = {systems, usability} }
@article{Kaki2019mergeable, author = {Kaki, Gowtham and Priya, Swarn and Sivaramakrishnan, KC and Jagannathan, Suresh}, title = {Mergeable Replicated Data Types}, journal = {Proceedings of the ACM on Programming Languages (PACMPL)}, year = {2019}, volume = {3}, number = {OOPSLA}, month = oct, publisher = {ACM}, doi = {10.1145/3360580}, url = {https://gowthamk.github.io/docs/mrdt.pdf}, keywords = {crdt-related, MRDT} }
@article{Mogk2019faulttolerantRP, author = {Mogk, Ragnar and Drechsler, Joscha and Salvaneschi, Guido and Mezini, Mira}, title = {A Fault-Tolerant Programming Model for Distributed Interactive Applications}, journal = {Proceedings of the ACM on Programming Languages (PACMPL)}, year = {2019}, volume = {3}, number = {OOPSLA}, month = oct, publisher = {ACM}, doi = {10.1145/3360570}, keywords = {systems} }
@inproceedings{Bauwens2019memory, author = {Bauwens, Jim and Gonzalez Boix, Elisa}, title = {Memory Efficient {CRDTs} in Dynamic Environments}, booktitle = {11th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages}, series = {VMIL 2019}, year = {2019}, month = oct, publisher = {ACM}, pages = {48–57}, doi = {10.1145/3358504.3361231}, pdf = {http://soft.vub.ac.be/Publications/2019/vub-soft-tr-19-22.pdf}, keywords = {systems, operation-based, memory management} }
@inproceedings{Auvolat2019merkle, author = {Auvolat, Alex and Taïani, François}, title = {{Merkle} Search Trees: Efficient State-Based {CRDTs} in Open Networks}, booktitle = {38th Symposium on Reliable Distributed Systems}, series = {SRDS 2019}, year = {2019}, pages = {221-230}, publisher = {IEEE}, doi = {10.1109/SRDS47363.2019.00032}, keywords = {state-based, security} }
@article{Kollmann2019Snapdoc, author = {Kollmann, Stephan A and Kleppmann, Martin and Beresford, Alastair R}, title = {{Snapdoc}: Authenticated snapshots with history privacy in peer-to-peer collaborative editing}, journal = {Proceedings on Privacy Enhancing Technologies (PoPETS)}, volume = {2019}, number = {3}, pages = {210--232}, year = {2019}, month = jul, publisher = {De Gruyter}, doi = {10.2478/popets-2019-0044}, pdf = {https://www.petsymposium.org/2019/files/papers/issue3/popets-2019-0044.pdf}, keywords = {security} }
@inproceedings{DePorre2019order, author = {De Porre, Kevin and Myter, Florian and De Troyer, Christophe and Scholliers, Christophe and De Meuter, Wolfgang and Gonzalez Boix, Elisa}, title = {Putting Order in Strong Eventual Consistency}, booktitle = {19th IFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems}, series = {DAIS 2019}, year = {2019}, month = jun, publisher = {Springer LNCS volume 11534}, pages = {36--56}, doi = {10.1007/978-3-030-22496-7_3}, pdf = {http://soft.vub.ac.be/Publications/2019/vub-soft-tr-19-09.pdf}, keywords = {systems, CScript} }
@inproceedings{Enes2019synchronization, author = {Enes, Vitor and Almeida, Paulo S{\'e}rgio and Baquero, Carlos and Leit\~{a}o, Jo\~{a}o}, title = {Efficient Synchronization of State-Based {CRDTs}}, booktitle = {35th IEEE International Conference on Data Engineering}, series = {ICDE 2019}, year = {2019}, month = apr, pages = {148--159}, doi = {10.1109/ICDE.2019.00022}, eprint = {1803.02750}, keywords = {state-based} }
@inproceedings{Leijnse2019higherorder, author = {Leijnse, Adriaan and Almeida, Paulo S\'{e}rgio and Baquero, Carlos}, title = {Higher-Order Patterns in Replicated Data Types}, booktitle = {6th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2019}, year = {2019}, month = mar, publisher = {ACM}, articleno = {5}, doi = {10.1145/3301419.3323971}, pdf = {https://repositorio.inesctec.pt/bitstream/123456789/10536/1/P-00Q-WJM.pdf}, keywords = {composition} }
@inproceedings{Kleppmann2019interleaving, author = {Kleppmann, Martin and Gomes, Victor B. F. and Mulligan, Dominic P. and Beresford, Alastair R.}, title = {Interleaving Anomalies in Collaborative Text Editors}, booktitle = {6th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2019}, year = {2019}, month = mar, publisher = {ACM}, articleno = {6}, doi = {10.1145/3301419.3323972}, pdf = {https://martin.kleppmann.com/papers/interleaving-papoc19.pdf}, keywords = {text-editing} }
@inproceedings{Mealha2019cloudEdge, author = {Mealha, David and Pregui\c{c}a, Nuno and Gomes, Maria Cecilia and Leit\~{a}o, Jo\~{a}o}, title = {Data Replication on the Cloud/Edge}, booktitle = {6th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2019}, year = {2019}, month = mar, publisher = {ACM}, articleno = {7}, doi = {10.1145/3301419.3323973}, keywords = {systems} }
@inproceedings{DePorre2019generic, author = {De Porre, Kevin and Myter, Florian and De Troyer, Christophe and Scholliers, Christophe and De Meuter, Wolfgang and Gonzalez Boix, Elisa}, title = {A Generic Replicated Data Type for Strong Eventual Consistency}, booktitle = {6th Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2019}, year = {2019}, month = mar, publisher = {ACM}, articleno = {8}, doi = {10.1145/3301419.3323974}, pdf = {http://soft.vub.ac.be/Publications/2019/vub-soft-tr-19-08.pdf}, keywords = {text-editing, operation-based} }
@inproceedings{Hall2018CausalGraph, author = {Hall, Aaron and Nelson, Grant and Thiesen, Mike and Woods, Nate}, title = {The Causal Graph {CRDT} for Complex Document Structure}, booktitle = {18th ACM Symposium on Document Engineering}, series = {DocEng 2018}, year = {2018}, month = aug, publisher = {ACM}, articleno = {34}, numpages = {4}, location = {Halifax, NS, Canada}, doi = {10.1145/3209280.3229110}, keywords = {text-editing, trees} }
@article{Lv2018CAD, author = {Lv, Xiao and He, Fazhi and Cheng, Yuan and Wu, Yiqi}, title = {A novel {CRDT}-based synchronization method for real-time collaborative {CAD} systems}, journal = {Advanced Engineering Informatics}, year = {2018}, month = aug, volume = {38}, pages = {381--391}, publisher = {Elsevier}, doi = {10.1016/j.aei.2018.08.008}, keywords = {systems} }
@inproceedings{Mogk2018distributedRP, author = {Mogk, Ragnar and Baumg{\"a}rtner, Lars and Salvaneschi, Guido and Freisleben, Bernd and Mezini, Mira}, title = {Fault-tolerant Distributed Reactive Programming}, booktitle = {32nd European Conference on Object-Oriented Programming}, series = {ECOOP 2018}, isbn = {978-3-95977-079-8}, issn = {1868-8969}, year = {2018}, month = jul, volume = {109}, publisher = {Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik}, urn = {urn:nbn:de:0030-drops-92064}, doi = {10.4230/LIPIcs.ECOOP.2018.1}, keywords = {systems} }
@inproceedings{Chandramouli2018Faster, author = {Chandramouli, Badrish and Prasaad, Guna and Kossmann, Donald and Levandoski, Justin and Hunter, James and Barnett, Mike}, title = {{FASTER}: A Concurrent Key-Value Store with In-Place Updates}, booktitle = {International Conference on Management of Data}, series = {SIGMOD 2018}, year = {2018}, month = jun, publisher = {ACM}, pages = {275--290}, doi = {10.1145/3183713.3196898}, pdf = {https://www.microsoft.com/en-us/research/uploads/prod/2018/03/faster-sigmod18.pdf}, keywords = {systems} }
@article{Preguica2018crdts, author = {Pregui{\c c}a, Nuno}, title = {Conflict-free Replicated Data Types: An Overview}, year = {2018}, month = jun, eprint = {1806.10254}, url = {https://arxiv.org/abs/1806.10254}, keywords = {introduction} }
@incollection{Preguica2018encyclopedia, author = {Pregui{\c c}a, Nuno and Baquero, Carlos and Shapiro, Marc}, title = {Conflict-Free Replicated Data Types ({CRDT}s)}, booktitle = {Encyclopedia of Big Data Technologies}, year = {2018}, month = may, publisher = {Springer}, doi = {10.1007/978-3-319-63962-8_185-1}, eprint = {1805.06358}, keywords = {introduction} }
@article{Kleppmann2018OpSets, author = {Kleppmann, Martin and Gomes, Victor B F and Mulligan, Dominic P and Beresford, Alastair R}, title = {{OpSets}: Sequential Specifications for Replicated Datatypes (Extended Version)}, year = {2018}, month = may, eprint = {1805.04263}, url = {https://arxiv.org/abs/1805.04263}, keywords = {specification, verification} }
@phdthesis{Jungnickel2018thesis, author = {Jungnickel, Tim}, title = {On the feasibility of multi-leader replication in the early tiers}, school = {TU Berlin}, year = {2018}, month = may, pdf = {https://api-depositonce.tu-berlin.de/server/api/core/bitstreams/29d50c91-fa68-4eb9-a13f-785886a0f32e/content}, doi = {10.14279/depositonce-7109}, keywords = {systems, IMAP, OT} }
@inproceedings{Shapiro2018referential, author = {Shapiro, Marc and Bieniusa, Annette and Zeller, Peter and Petri, Gustavo}, title = {Ensuring Referential Integrity under Causal Consistency}, booktitle = {5th Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2018}, year = {2018}, month = apr, publisher = {ACM}, articleno = {1}, doi = {10.1145/3194261.3194262}, pdf = {https://pages.lip6.fr/Marc.Shapiro/papers/causal-refs-papoc-2018-04.pdf}, keywords = {causal-consistency} }
@inproceedings{Bauwens2018constraining, author = {Bauwens, Jim and Myter, Florian and Gonzalez Boix, Elisa}, title = {Constraining the Eventual in Eventual Consistency}, booktitle = {5th Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2018}, year = {2018}, month = apr, publisher = {ACM}, articleno = {2}, doi = {10.1145/3194261.3194263}, pdf = {http://myter.be/papers/papoc18.pdf}, keywords = {counters} }
@inproceedings{Jagadeesan2018eventual, author = {Jagadeesan, Radha and Riely, James}, title = {Eventual Consistency for {CRDTs}}, booktitle = {21st European Symposium on Programming}, series = {ESOP 2018}, year = {2018}, month = apr, publisher = {Springer LNCS volume 10801}, pages = {968--995}, doi = {10.1007/978-3-319-89884-1_34}, pdf = {http://fpl.cs.depaul.edu/jriely/papers/2018-esop.pdf}, keywords = {specification, composition} }
@article{Almeida2018delta, author = {Almeida, Paulo S\'{e}rgio and Shoker, Ali and Baquero, Carlos}, title = {Delta state replicated data types}, journal = {Journal of Parallel and Distributed Computing}, volume = {111}, pages = {162--173}, year = {2018}, month = jan, eprint = {1603.01529}, doi = {10.1016/j.jpdc.2017.08.003}, keywords = {state-based} }
@inproceedings{Najafzadeh2018filesystem, author = {Najafzadeh, Mahsa and Shapiro, Marc and Eugster, Patrick}, title = {Co-Design and Verification of an Available File System}, booktitle = {19th International Conference on Verification, Model Checking, and Abstract Interpretation}, series = {VMCAI 2018}, year = {2018}, pages = {358--381}, publisher = {Springer LNCS volume 10747}, month = jan, doi = {10.1007/978-3-319-73721-8_17}, pdf = {https://pages.lip6.fr/Marc.Shapiro/papers/VMCAI-2018-filesys.pdf}, keywords = {trees} }
@mastersthesis{Enes2017sync, author = {Enes, Vitor}, title = {Efficient Synchronization of State-based {CRDTs}}, school = {Universidade do Minho}, year = {2017}, month = nov, url = {https://vitorenes.org/page/other/msc-thesis.pdf}, keywords = {state-based} }
@article{Gomes2017verifying, author = {Gomes, Victor B F and Kleppmann, Martin and Mulligan, Dominic P and Beresford, Alastair R}, title = {Verifying strong eventual consistency in distributed systems}, journal = {Proceedings of the ACM on Programming Languages (PACMPL)}, year = {2017}, volume = {1}, number = {OOPSLA}, month = oct, publisher = {ACM}, doi = {10.1145/3133933}, eprint = {1707.01747}, keywords = {specification, verification} }
@article{Baquero2017composition, author = {Baquero, Carlos and Almeida, Paulo S{\'e}rgio and Cunha, Alcino and Ferreira, Carla}, title = {Composition in State-based Replicated Data Types}, journal = {Bulletin of the European Association for Theoretical Computer Science}, year = {2017}, month = oct, number = {123}, pdf = {http://bulletin.eatcs.org/index.php/beatcs/article/viewFile/507/496}, keywords = {composition, state-based} }
@article{Baquero2017pure, author = {Baquero, Carlos and Almeida, Paulo S{\'e}rgio and Shoker, Ali}, title = {Pure Operation-Based Replicated Data Types}, year = {2017}, eprint = {1710.04469}, month = oct, url = {https://arxiv.org/abs/1710.04469}, keywords = {operation-based} }
@inproceedings{Yu2017disturbance, author = {Yu, Weihai and Oster, G{\'e}rald and Ignat, Claudia-Lavinia}, title = {Handling Disturbance and Awareness of Concurrent Updates in a Collaborative Editor}, booktitle = {14th International Conference on Cooperative Design, Visualization, and Engineering}, series = {CDVE 2017}, year = {2017}, month = sep, publisher = {Springer LNCS volume 10451}, pages = {39--47}, doi = {10.1007/978-3-319-66805-5_5}, pdf = {https://hal.inria.fr/hal-01652656/document}, keywords = {systems, usability} }
@article{Kleppmann2017json, author = {Kleppmann, Martin and Beresford, Alastair R}, title = {A Conflict-Free Replicated {JSON} Datatype}, journal = {IEEE Transactions on Parallel and Distributed Systems}, year = {2017}, volume = {28}, number = {10}, pages = {2733--2746}, month = apr, publisher = {IEEE}, doi = {10.1109/TPDS.2017.2697382}, eprint = {1608.03960}, keywords = {trees} }
@inproceedings{Jungnickel2017imap, author = {Jungnickel, Tim and Oldenburg, Lennart}, title = {{Pluto}: The {CRDT}-Driven {IMAP} Server}, booktitle = {3rd International Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2017}, year = 2017, month = apr, publisher = {ACM}, articleno = {1}, doi = {10.1145/3064889.3064891}, pdf = {http://www.redaktion.tu-berlin.de/fileadmin/a34331500/paper/papoc17-jungnickel.pdf}, keywords = {systems} }
@inproceedings{Younes2017resettable, author = {Younes, Georges and Almeida, Paulo S\'{e}rgio and Baquero, Carlos}, title = {Compact Resettable Counters through Causal Stability}, booktitle = {3rd International Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2017}, year = {2017}, month = apr, publisher = {ACM}, articleno = {2}, doi = {10.1145/3064889.3064892}, pdf = {https://haslab.uminho.pt/cbm/files/a3-younes.pdf}, keywords = {counters} }
@inproceedings{Zeller2017Repliss, author = {Zeller, Peter}, title = {Testing Properties of Weakly Consistent Programs with {Repliss}}, booktitle = {3rd International Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2017}, year = {2017}, month = apr, publisher = {ACM}, articleno = {3}, doi = {10.1145/3064889.3064893}, pdf = {https://dl.acm.org/authorize?N37605}, keywords = {testing, verification} }
@inproceedings{Enes2017borrowing, author = {Enes, Vitor and Baquero, Carlos and Almeida, Paulo S\'{e}rgio and Leit\~{a}o, Jo\~{a}o}, title = {Borrowing an Identity for a Distributed Counter: Work in Progress Report}, booktitle = {3rd International Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2017}, year = {2017}, month = apr, publisher = {ACM}, doi = {10.1145/3064889.3064894}, pdf = {https://haslab.uminho.pt/sites/default/files/cbm/files/a5-enes.pdf}, keywords = {counters} }
@inproceedings{vanderLinde2017Legion, author = {van der Linde, Albert and Fouto, Pedro and Leit{\~a}o, Jo{\~a}o and Pregui{\c c}a, Nuno and Casti{\~n}eira, Santiago and Bieniusa, Annette}, title = {{Legion}: Enriching Internet Services with Peer-to-Peer Interactions}, booktitle = {26th International Conference on World Wide Web}, series = {WWW 2017}, year = {2017}, month = apr, publisher = {ACM}, pages = {283--292}, doi = {10.1145/3038912.3052673}, pdf = {http://novasys.di.fct.unl.pt/~alinde/publications/fp0964-vanderlinde.pdf}, keywords = {systems, Legion} }
@inproceedings{Briot2016group, author = {Briot, Lo{\"\i}ck and Urso, Pascal and Shapiro, Marc}, title = {High Responsiveness for Group Editing {CRDTs}}, booktitle = {19th International Conference on Supporting Group Work}, series = {GROUP 2016}, year = {2016}, pages = {51--60}, publisher = {ACM}, month = nov, doi = {10.1145/2957276.2957300}, pdf = {https://hal.inria.fr/hal-01343941/document}, keywords = {text-editing, RGASplit} }
@inproceedings{Nicolaescu2016YATA, author = {Nicolaescu, Petru and Jahns, Kevin and Derntl, Michael and Klamma, Ralf}, title = {Near Real-Time Peer-to-Peer Shared Editing on Extensible Data Types}, booktitle = {19th International Conference on Supporting Group Work}, series = {GROUP 2016}, year = {2016}, pages = {39--49}, publisher = {ACM}, month = nov, doi = {10.1145/2957276.2957310}, pdf = {https://www.researchgate.net/publication/310212186_Near_Real-Time_Peer-to-Peer_Shared_Editing_on_Extensible_Data_Types}, keywords = {text-editing, YATA, Yjs} }
@inproceedings{Lv2016stringbased, author = {Lv, Xiao and He, Fazhi and Cai, Weiwei and Cheng, Yuan}, title = {An efficient collaborative editing algorithm supporting string-based operations}, booktitle = {20th IEEE International Conference on Computer Supported Cooperative Work in Design}, series = {CSCWD 2016}, year = {2016}, pages = {45--50}, publisher = {IEEE}, month = sep, doi = {10.1109/CSCWD.2016.7565961}, keywords = {text-editing} }
@inproceedings{Attiya2016text, author = {Attiya, Hagit and Burckhardt, Sebastian and Gotsman, Alexey and Morrison, Adam and Yang, Hongseok and Zawirski, Marek}, title = {Specification and Complexity of Collaborative Text Editing}, booktitle = {ACM Symposium on Principles of Distributed Computing}, series = {PODC 2016}, year = {2016}, month = jul, publisher = {ACM}, pages = {259--268}, doi = {10.1145/2933057.2933090}, pdf = {http://www.cs.ox.ac.uk/people/hongseok.yang/paper/podc16-full.pdf}, keywords = {text-editing, specification, verification} }
@inproceedings{Akkoorath2016Cure, author = {Akkoorath, Deepthi Devaki and Tomsic, Alejandro Z. and Bravo, Manuel and Li, Zhongmiao and Crain, Tyler and Bieniusa, Annette and Pregui{\c c}a, Nuno and Shapiro, Marc}, title = {{Cure}: Strong Semantics Meets High Availability and Low Latency}, booktitle = {36th IEEE International Conference on Distributed Computing Systems}, series = {ICDCS 2016}, year = {2016}, month = jun, publisher = {IEEE}, pages = {405--414}, doi = {10.1109/ICDCS.2016.98}, pdf = {https://pages.lip6.fr/Marc.Shapiro/papers/Cure-final-ICDCS16.pdf}, keywords = {systems, Cure, Antidote} }
@inproceedings{Zhao2016byzantine, author = {Zhao, Wenbing and Babi, Mamdouh and Yang, William and Luo, Xiong and Zhu, Yueqin and Yang, Jack and Luo, Chaomin and Yang, Mary}, title = {Byzantine Fault Tolerance for Collaborative Editing with Commutative Operations}, booktitle = {IEEE International Conference on Electro Information Technology}, series = {EIT 2016}, year = {2016}, month = may, pages = {246--251}, doi = {10.1109/EIT.2016.7535248}, publisher = {IEEE}, keywords = {security} }
@inproceedings{Brown2016bigsets, author = {Brown, Russell and Lakhani, Zeeshan and Place, Paul}, title = {Big(Ger) Sets: Decomposed Delta {CRDT} Sets in {Riak}}, booktitle = {2nd Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2016}, year = {2016}, month = apr, articleno = {5}, publisher = {ACM}, doi = {10.1145/2911151.2911156}, eprint = {1605.06424}, keywords = {set-crdt, systems, composition} }
@inproceedings{Zawirski2016register, author = {Zawirski, Marek and Baquero, Carlos and Bieniusa, Annette and Pregui\c{c}a, Nuno and Shapiro, Marc}, title = {Eventually Consistent Register Revisited}, booktitle = {2nd Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2016}, year = {2016}, month = apr, articleno = {9}, publisher = {ACM}, doi = {10.1145/2911151.2911157}, url = {https://core.ac.uk/download/pdf/154274593.pdf}, eprint = {1511.05010}, keywords = {state-based} }
@inproceedings{Baquero2016embedded, author = {Baquero, Carlos and Almeida, Paulo S{\'e}rgio and Lerche, Carl}, title = {The problem with embedded {CRDT} counters and a solution}, booktitle = {2nd Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2016}, year = {2016}, month = apr, articleno = {10}, publisher = {ACM}, doi = {10.1145/2911151.2911159}, url = {http://haslab.uminho.pt/cbm/files/abstractcounterpapocfinal.pdf}, keywords = {composition, counters} }
@inproceedings{Weilbach2016cdvcs, author = {Weilbach, Christian and K\"{u}hne, Konrad and Bieniusa, Annette}, title = {Decoupling Conflict Resolution with {CDVCS}}, booktitle = {2nd Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2016}, year = {2016}, month = apr, articleno = {11}, publisher = {ACM}, doi = {10.1145/2911151.2911154}, keywords = {systems, Replikativ} }
@inproceedings{vanderLinde06delta, author = {van der Linde, Albert and Leit\~{a}o, Jo\~{a}o and Pregui\c{c}a, Nuno}, title = {{$\Delta$-CRDTs}: Making {$\delta$-CRDTs} Delta-based}, booktitle = {2nd Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2016}, year = {2016}, month = apr, articleno = {12}, publisher = {ACM}, doi = {10.1145/2911151.2911163}, pdf = {https://novasys.di.fct.unl.pt/~alinde/publications/a12-van_der_linde.pdf}, keywords = {state-based} }
@inproceedings{Akkoorath2016objects, author = {Akkoorath, Deepthi Devaki and Bieniusa, Annette}, title = {Highly-Scalable Concurrent Objects}, booktitle = {2nd Workshop on the Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2016}, year = {2016}, month = apr, articleno = {13}, publisher = {ACM}, doi = {10.1145/2911151.2911158}, pdf = {https://softech.cs.uni-kl.de/homepage/publications/Akkoorath.Bieniusa2016.pdf}, keywords = {shared-memory concurrency} }
@inproceedings{Nedelec2016CRATE, author = {N{\'e}delec, Brice and Molli, Pascal and Mostefaoui, Achour}, title = {{CRATE}: Writing Stories Together with our Browsers}, booktitle = {25th International World Wide Web Conference}, series = {WWW 2016}, year = {2016}, pages = {231--234}, publisher = {ACM}, month = apr, doi = {10.1145/2872518.2890539}, pdf = {https://hal.archives-ouvertes.fr/hal-01303333}, keywords = {text-editing, LSEQ} }
@inproceedings{Gotsman2016CISE, author = {Gotsman, Alexey and Yang, Hongseok and Ferreira, Carla and Najafzadeh, Mahsa and Shapiro, Marc}, title = {{'Cause I'm Strong Enough}: Reasoning About Consistency Choices in Distributed Systems}, booktitle = {43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages}, series = {POPL 2016}, year = {2016}, month = jan, publisher = {ACM}, pages = {371--384}, numpages = {14}, doi = {10.1145/2837614.2837625}, pdf = {http://software.imdea.org/~gotsman/papers/logic-popl16.pdf}, keywords = {specification, verification} }
@inproceedings{Zawirski2015SwiftCloud, author = {Zawirski, Marek and Pregui{\c c}a, Nuno and Duarte, S{\'e}rgio and Bieniusa, Annette and Balegas, Valter and Shapiro, Marc}, title = {Write Fast, Read in the Past: Causal Consistency for Client-side Applications}, booktitle = {16th Annual Middleware Conference}, year = {2015}, month = dec, publisher = {ACM/IFIP/USENIX}, pages = {75--87}, doi = {10.1145/2814576.2814733}, pdf = {http://lip6.fr/Marc.Shapiro/papers/write-fast-read-past-middleware-2015.pdf}, keywords = {systems, SwiftCloud} }
@inproceedings{Briquemont2015partial, author = {Iwan Briquemont and Manuel Bravo and Zhongmiao Li and Peter Van Roy}, title = {Conflict-free Partially Replicated Data Types}, booktitle = {7th IEEE International Conference on Cloud Computing Technology and Science}, series = {CloudCom 2015}, year = {2015}, month = nov, publisher = {IEEE}, doi = {10.1109/CloudCom.2015.81}, url = {https://dial.uclouvain.be/pr/boreal/object/boreal%3A214300/datastream/PDF_01/view}, keywords = {systems, SwiftCloud} }
@inproceedings{Balegas2015invariants, author = {Balegas, Valter and Serra, Diogo and Duarte, S\'{e}rgio and Ferreira, Carla and Shapiro, Marc and Rodrigues, Rodrigo and Pregui\c{c}a, Nuno}, title = {Extending Eventually Consistent Cloud Databases for Enforcing Numeric Invariants}, booktitle = {34th IEEE Symposium on Reliable Distributed Systems}, series = {SRDS 2015}, year = {2015}, month = sep, publisher = {IEEE}, pages = {31--36}, doi = {10.1109/SRDS.2015.32}, eprint = {1503.09052}, keywords = {counters} }
@inproceedings{Meiklejohn2015Lasp2, author = {Meiklejohn, Christopher and Van Roy, Peter}, title = {{Lasp}: A Language for Distributed, Coordination-free Programming}, booktitle = {17th International Symposium on Principles and Practice of Declarative Programming}, series = {PPDP 2015}, year = {2015}, month = jul, publisher = {ACM}, pages = {184--195}, doi = {10.1145/2790449.2790525}, pdf = {https://www.info.ucl.ac.be/~pvr/ppdp-2015-cr.pdf}, keywords = {computation, systems} }
@inproceedings{Nicolaescu2015Yjs, author = {Nicolaescu, Petru and Jahns, Kevin and Derntl, Michael and Klamma, Ralf}, title = {{Yjs}: A Framework for Near Real-Time {P2P} Shared Editing on Arbitrary Data Types}, booktitle = {15th International Conference on Web Engineering}, series = {ICWE 2015}, year = {2015}, month = jun, publisher = {Springer LNCS volume 9114}, pages = {675--678}, doi = {10.1007/978-3-319-19890-3_55}, url = {http://dbis.rwth-aachen.de/~derntl/papers/preprints/icwe2015-preprint.pdf}, keywords = {systems, Yjs} }
@inproceedings{Yu2015undo, author = {Yu, Weihai and Andr{\'e}, Luc and Ignat, Claudia-Lavinia}, title = {A {CRDT} Supporting Selective Undo for Collaborative Text Editing}, booktitle = {15th IFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems}, series = {DAIS 2015}, year = {2015}, pages = {193--206}, publisher = {Springer LNCS volume 9038}, month = jun, doi = {10.1007/978-3-319-19129-4_16}, pdf = {https://members.loria.fr/CIgnat/files/pdf/YuDAIS15.pdf}, keywords = {text-editing, undo} }
@inproceedings{Tao2015filesystems, author = {Tao, Vinh and Shapiro, Marc and Rancurel, Vianney}, title = {Merging semantics for conflict updates in geo-distributed file systems}, booktitle = {8th ACM International Systems and Storage Conference}, series = {SYSTOR 2015}, year = {2015}, publisher = {ACM}, month = may, articleno = {10}, doi = {10.1145/2757667.2757683}, pdf = {https://pages.lip6.fr/Marc.Shapiro/papers/geodistr-FS-Systor-2015.pdf}, keywords = {trees} }
@techreport{Baquero2015composition, author = {Baquero, Carlos and Almeida, Paulo S{\'e}rgio and Cunha, Alcino and Ferreira, Carla}, title = {Composition of State-based {CRDTs}}, year = {2015}, month = may, institution = {HASLab, INESC TEC}, url = {http://haslab.uminho.pt/cbm/files/crdtcompositionreport.pdf}, keywords = {state-based} }
@inproceedings{Almeida2015delta, author = {Almeida, Paulo S{\'e}rgio and Shoker, Ali and Baquero, Carlos}, title = {Efficient State-Based {CRDT}s by Delta-Mutation}, booktitle = {International Conference on Networked Systems}, series = {NETYS 2015}, year = {2015}, pages = {62--76}, month = may, publisher = {Springer LNCS volume 9466}, doi = {10.1007/978-3-319-26850-7_5}, eprint = {1410.2803}, keywords = {state-based} }
@inproceedings{Gotsman2015composite, author = {Gotsman, Alexey and Yang, Hongseok}, title = {Composite Replicated Data Types}, booktitle = {24th European Symposium on Programming}, series = {ESOP 2015}, year = {2015}, month = apr, publisher = {Springer LNCS volume 9032}, doi = {10.1007/978-3-662-46669-8_24}, pdf = {http://software.imdea.org/~gotsman/papers/compos-esop15-ext.pdf}, keywords = {specification, composition} }
@inproceedings{Navalho2015computations, author = {Navalho, David and Duarte, S\'{e}rgio and Pregui\c{c}a, Nuno}, title = {A Study of {CRDTs} That Do Computations}, booktitle = {1st Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2015}, year = {2015}, month = apr, articleno = {1}, publisher = {ACM}, doi = {10.1145/2745947.2745948}, pdf = {http://asc.di.fct.unl.pt/~nmp/pubs/papoc-2015-1.pdf}, keywords = {computation} }
@inproceedings{Holt2015claret, author = {Holt, Brandon and Zhang, Irene and Ports, Dan and Oskin, Mark and Ceze, Luis}, title = {{Claret}: Using Data Types for Highly Concurrent Distributed Transactions}, booktitle = {1st Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2015}, year = {2015}, month = apr, articleno = {4}, publisher = {ACM}, doi = {10.1145/2745947.2745951}, pdf = {http://irenezhang.net/papers/claret-papoc15.pdf}, keywords = {transactions, systems} }
@inproceedings{Castineira2015offline, author = {Casti{\~n}eira, Santiago J and Bieniusa, Annette}, title = {Collaborative offline web applications using conflict-free replicated data types}, booktitle = {1st Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2015}, year = {2015}, month = apr, articleno = {5}, publisher = {ACM}, doi = {10.1145/2745947.2745952}, keywords = {systems} }
@inproceedings{Meiklejohn2015Lasp1, author = {Meiklejohn, Christopher and Van Roy, Peter}, title = {Lasp: A Language for Distributed, Eventually Consistent Computations with CRDTs}, booktitle = {1st Workshop on Principles and Practice of Consistency for Distributed Data}, series = {PaPoC 2015}, year = {2015}, month = apr, articleno = {7}, publisher = {ACM}, doi = {10.1145/2745947.2745954}, url = {https://www.info.ucl.ac.be/~pvr/papoc-2015-lasp-abstract.pdf}, keywords = {computation} }
@article{Burckhardt2014principles, author = {Burckhardt, Sebastian}, title = {Principles of Eventual Consistency}, journal = {Foundations and Trends in Programming Languages}, year = {2014}, volume = {1}, number = {1-2}, pages = {1--150}, month = oct, publisher = {now publishers}, doi = {10.1561/2500000011}, pdf = {https://www.nowpublishers.com/article/Download/PGL-011}, keywords = {introduction} }
@inproceedings{Li2014Sieve, author = {Li, Cheng and Leit\~{a}o, Jo\~{a}o and Clement, Allen and Pregui{\c c}a, Nuno and Rodrigues, Rodrigo and Vafeiadis, Viktor}, title = {Automating the Choice of Consistency Levels in Replicated Systems}, booktitle = {USENIX Annual Technical Conference}, series = {ATC 2014}, year = {2014}, month = jun, publisher = {USENIX}, pages = {281--292}, url = {https://www.usenix.org/conference/atc14/technical-sessions/presentation/li_cheng_2}, keywords = {verification} }
@incollection{Zeller2014verification, author = {Zeller, Peter and Bieniusa, Annette and Poetzsch-Heffter, Arnd}, title = {Formal Specification and Verification of {CRDTs}}, booktitle = {34th IFIP International Conference on Formal Techniques for Distributed Objects, Components and Systems}, series = {FORTE 2014}, year = {2014}, month = jun, pages = {33--48}, publisher = {Springer LNCS volume 8461}, doi = {10.1007/978-3-662-43613-4_3}, url = {https://softech.cs.uni-kl.de/homepage/publications/Zeller.Bieniusa.Poetzsch-Heffter.Forte2014.pdf}, keywords = {specification, verification} }
@inproceedings{Baquero2014opbased, author = {Baquero, Carlos and Almeida, Paulo S{\'e}rgio and Shoker, Ali}, title = {Making Operation-Based {CRDT}s Operation-Based}, booktitle = {14th IFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems}, series = {DAIS 2014}, pages = {126--140}, month = jun, year = 2014, publisher = {Springer LNCS volume 8460}, doi = {10.1007/978-3-662-43352-2_11}, pdf = {http://gsd.di.uminho.pt/members/cbm/ps/crdtOpsMiddleware.pdf}, keywords = {operation-based}, note = {A shorter paper with the same title appears in PaPEC 2014} }
@inproceedings{Brown2014Riak, author = {Brown, Russell and Cribbs, Sean and Meiklejohn, Christopher and Elliott, Sam}, title = {{Riak DT Map}: A Composable, Convergent Replicated Dictionary}, booktitle = {1st Workshop on Principles and Practice of Eventual Consistency}, series = {PaPEC 2014}, year = {2014}, month = apr, articleno = {1}, publisher = {ACM}, doi = {10.1145/2596631.2596633}, pdf = {https://pages.lip6.fr/syncfree/attachments/article/46/WP3-report.pdf#page=31}, keywords = {systems, composition} }
@inproceedings{Almeida2014decomposition, author = {Almeida, Paulo S{\'e}rgio and Shoker, Ali and Baquero, Carlos}, title = {Efficient State-based {CRDT}s by Decomposition (Work in progress report)}, booktitle = {1st Workshop on Principles and Practice of Eventual Consistency}, series = {PaPEC 2014}, year = {2014}, month = apr, publisher = {ACM}, articleno = {3}, doi = {10.1145/2596631.2596634}, pdf = {https://core.ac.uk/download/pdf/154274611.pdf}, keywords = {composition} }
@inproceedings{AhmedNacer2014merging, author = {Ahmed-Nacer, Mehdi and Urso, Pascal and Balegas, Valter and Pergui{\c c}a, Nuno}, title = {Merging {OT} and {CRDT} algorithms}, booktitle = {1st Workshop on Principles and Practice of Eventual Consistency}, series = {PaPEC 2014}, year = {2014}, month = apr, articleno = {9}, publisher = {ACM}, doi = {10.1145/2596631.2596636}, pdf = {https://hal.inria.fr/file/index/docid/957167/filename/main.pdf}, keywords = {text-editing} }
@inproceedings{Meiklejohn2014composability, author = {Meiklejohn, Christopher}, title = {On the Composability of the {Riak DT Map}: Expanding from Embedded to Multi-key Structures}, booktitle = {1st Workshop on Principles and Practice of Eventual Consistency}, series = {PaPEC 2014}, year = {2014}, articleno = {13}, publisher = {ACM}, doi = {10.1145/2596631.2596635}, pdf = {https://pages.lip6.fr/syncfree/attachments/article/46/WP3-report.pdf#page=34}, keywords = {composition} }
@inproceedings{Grishchenko2014oplogs, author = {Grishchenko, Victor}, title = {{Citrea} and {Swarm}: Partially ordered op logs in the browser}, booktitle = {1st Workshop on Principles and Practice of Eventual Consistency}, series = {PaPEC 2014}, year = {2014}, month = apr, articleno = {8}, publisher = {ACM}, doi = {10.1145/2596631.2596641}, url = {http://www.ds.ewi.tudelft.nl/~victor/polo.pdf}, keywords = {text-editing, operation-based} }
@inproceedings{Kuper2014LVars, author = {Kuper, Lindsey and Newton, Ryan R}, title = {Joining Forces: Toward a Unified Account of {LVars} and Convergent Replicated Data Types}, booktitle = {5th Workshop on Determinism and Correctness in Parallel Programming}, series = {WoDet 2014}, year = {2014}, month = mar, url = {http://wodet.cs.washington.edu/wp-content/uploads/2014/02/wodet2014-final1.pdf}, keywords = {crdt-related, shared-memory concurrency} }
@inproceedings{Burckhardt2014specification, author = {Burckhardt, Sebastian and Gotsman, Alexey and Yang, Hongseok and Zawirski, Marek}, title = {Replicated Data Types: Specification, Verification, Optimality}, booktitle = {41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages}, series = {POPL 2014}, year = {2014}, month = jan, publisher = {ACM}, pages = {271--284}, doi = {10.1145/2535838.2535848}, pdf = {http://software.imdea.org/~gotsman/papers/distrmm-popl14-ext.pdf}, keywords = {specification, verification} }
@inproceedings{Andre2013LogootSplit, author = {Andr{\'e}, Luc and Martin, St{\'e}phane and Oster, G{\'e}rald and Ignat, Claudia-Lavinia}, title = {Supporting Adaptable Granularity of Changes for Massive-scale Collaborative Editing}, booktitle = {9th IEEE International Conference on Collaborative Computing: Networking, Applications and Worksharing}, series = {CollaborateCom 2013}, year = {2013}, month = oct, publisher = {IEEE}, doi = {10.4108/icst.collaboratecom.2013.254123}, pdf = {https://hal.inria.fr/hal-00903813/file/main.pdf}, keywords = {text-editing, LogootSplit, sequence-CRDT} }
@inproceedings{AhmedNacer2013concurrency, author = {Ahmed-Nacer, Mehdi and Urso, Pascal and Balegas, Valter and Pregui{\c c}a, Nuno}, title = {Concurrency Control and Awareness Support for Multi-synchronous Collaborative Editing}, booktitle = {9th IEEE International Conference on Collaborative Computing}, series = {CollaborateCom 2013}, year = {2013}, publisher = {ICST}, month = oct, doi = {10.4108/icst.collaboratecom.2013.254113}, pdf = {http://asc.di.fct.unl.pt/~nmp/pubs/collaboratecom-2013.pdf}, keywords = {text-editing} }
@inproceedings{Nedelec2013LSEQ, author = {N{\'e}delec, Brice and Molli, Pascal and Mostefaoui, Achour and Desmontils, Emmanuel}, title = {{LSEQ}: an Adaptive Structure for Sequences in Distributed Collaborative Editing}, booktitle = {13th ACM Symposium on Document Engineering}, series = {DocEng 2013}, year = {2013}, pages = {37--46}, publisher = {ACM}, month = sep, doi = {10.1145/2494266.2494278}, pdf = {https://hal.archives-ouvertes.fr/file/index/docid/921633/filename/fp025-nedelec.pdf}, keywords = {text-editing, LSEQ} }
@article{Almeida2013counters, author = {Almeida, Paulo S\'{e}rgio and Baquero, Carlos}, title = {Scalable Eventually Consistent Counters over Unreliable Networks}, year = {2013}, month = jul, eprint = {1307.3207}, url = {https://arxiv.org/abs/1307.3207}, keywords = {counters} }
@inproceedings{LeMerrer2013Bitbox, author = {Le Merrer, Erwan and Le Scouarnec, Nicolas and Straub, Gilles}, title = {{Bitbox}: Eventually Consistent File Sharing}, booktitle = {1st International Conference on Networked Systems}, series = {NETYS 2013}, year = {2013}, month = may, pages = {274–278}, publisher = {Springer LNCS volume 7853}, doi = {10.1007/978-3-642-40148-0_23}, keywords = {systems, Bitbox} }
@inproceedings{Navalho2013stream, author = {Navalho, David and Duarte, S\'{e}rgio and Pregui\c{c}a, Nuno and Shapiro, Marc}, title = {Incremental Stream Processing Using Computational Conflict-Free Replicated Data Types}, booktitle = {3rd International Workshop on Cloud Data and Platforms}, series = {CloudDP 2013}, year = {2013}, month = apr, isbn = {9781450320757}, publisher = {ACM}, pages = {31--36}, doi = {10.1145/2460756.2460762}, pdf = {https://pages.lip6.fr/Marc.Shapiro/papers/computational-CRDTs-CloudDP-2013.pdf}, keywords = {computation} }
@inproceedings{Truong2012authenticating, author = {Truong, Hien Thi Thu and Ignat, Claudia-Lavinia and Molli, Pascal}, title = {Authenticating operation-based history in collaborative systems}, booktitle = {17th ACM International Conference on Supporting Group Work}, series = {GROUP 2012}, year = {2012}, month = oct, pages = {131--140}, publisher = {ACM}, doi = {10.1145/2389176.2389197}, url = {https://hal.inria.fr/hal-00761045/document}, keywords = {security} }
@inproceedings{Conway2012lattices, author = {Conway, Neil and Marczak, William R. and Alvaro, Peter and Hellerstein, Joseph M. and Maier, David}, title = {Logic and Lattices for Distributed Programming}, booktitle = {3rd ACM Symposium on Cloud Computing}, series = {SoCC 2012}, year = {2012}, month = oct, publisher = {ACM}, articleno = {1}, pages = {1--14}, doi = {10.1145/2391229.2391230}, pdf = {https://www2.eecs.berkeley.edu/Pubs/TechRpts/2012/EECS-2012-167.pdf}, keywords = {crdt-related} }
@inproceedings{Bieniusa2012sets, author = {Bieniusa, Annette and Zawirski, Marek and Pregui\c{c}a, Nuno and Shapiro, Marc and Baquero, Carlos and Balegas, Valter and Duarte, S{\'e}rgio}, title = {Brief Announcement: Semantics of Eventually Consistent Replicated Sets}, booktitle = {26th International Symposium on Distributed Computing}, series = {DISC 2012}, year = {2012}, month = oct, publisher = {Springer LNCS volume 7611}, pages = {441--442}, doi = {10.1007/978-3-642-33651-5_48}, url = {https://pages.lip6.fr/Marc.Shapiro/papers/semantics-sets-BA-DISC-2012.pdf}, keywords = {set-crdt, specification} }
@techreport{Bieniusa2012optimized, author = {Bieniusa, Annette and Zawirski, Marek and Pregui{\c c}a, Nuno and Shapiro, Marc and Baquero, Carlos and Balegas, Valter and Duarte, S{\'e}rgio}, title = {An Optimized Conflict-free Replicated Set}, type = {Research Report}, institution = {INRIA}, number = {RR-8083}, year = {2012}, month = oct, eprint = {1210.3368}, pdf = {http://hal.inria.fr/hal-00738680/PDF/RR-8083.pdf}, keywords = {set-crdt} }
@techreport{AhmedNacer2012filesystem, author = {Ahmed-Nacer, Mehdi and Martin, St{\'e}phane and Urso, Pascal}, title = {File system on {CRDT}}, institution = {INRIA}, year = {2012}, month = jul, number = {RR-8027}, publisher = {INRIA}, type = {Research Report}, eprint = {1207.5990}, url = {https://hal.inria.fr/hal-00720681/}, keywords = {trees} }
@inproceedings{Burckhardt2012CloudTypes, author = {Burckhardt, Sebastian and F{\"a}hndrich, Manuel and Leijen, Daan and Wood, Benjamin P}, title = {Cloud Types for Eventual Consistency}, booktitle = {26th European Conference on Object-Oriented Programming}, series = {ECOOP 2012}, year = {2012}, month = jun, pages = {283--307}, publisher = {Springer LNCS volume 7313}, doi = {10.1007/978-3-642-31057-7_14}, url = {https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/final-with-color.pdf}, keywords = {crdt-related} }
@inproceedings{Ibanez2012semantic, author = {Ib\'{a}\~{n}ez, Luis Daniel and Skaf-Molli, Hala and Molli, Pascal and Corby, Olivier}, title = {Synchronizing Semantic Stores with Commutative Replicated Data Types}, booktitle = {21st International Conference on World Wide Web}, series = {WWW 2012}, year = {2012}, month = apr, pages = {1091--1096}, publisher = {ACM}, doi = {10.1145/2187980.2188246}, pdf = {https://hal.inria.fr/hal-00686484/document}, keywords = {set-crdt} }
@inproceedings{Burckhardt2012transactions, author = {Burckhardt, Sebastian and Leijen, Daan and F{\"a}hndrich, Manuel and Sagiv, Mooly}, title = {Eventually Consistent Transactions}, booktitle = {21st European Symposium on Programming}, series = {ESOP 2012}, year = {2012}, month = mar, publisher = {Springer LNCS volume 7211}, pages = {67--86}, doi = {10.1007/978-3-642-28869-2_4}, pdf = {https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/ecr-esop2012.pdf}, keywords = {crdt-related, transactions} }
@techreport{Martin2011trees, author = {Martin, St\'{e}phane and Ahmed-Nacer, Mehdi and Urso, Pascal}, title = {Abstract unordered and ordered trees {CRDT}}, type = {Research Report}, institution = {INRIA}, number = {RR-7825}, year = {2011}, month = dec, pdf = {https://hal.inria.fr/hal-00648106v2/document}, eprint = {1201.1784}, keywords = {trees} }
@inproceedings{Shapiro2011CRDTs, author = {Shapiro, Marc and Pregui\c{c}a, Nuno and Baquero, Carlos and Zawirski, Marek}, title = {Conflict-free Replicated Data Types}, booktitle = {13th International Conference on Stabilization, Safety, and Security of Distributed Systems}, series = {SSS 2011}, year = {2011}, month = oct, pages = {386--400}, doi = {10.1007/978-3-642-24550-3_29}, pdf = {https://pages.lip6.fr/Marek.Zawirski/papers/RR-7687.pdf}, publisher = {Springer LNCS volume 6976}, keywords = {introduction} }
@inproceedings{AhmedNacer2011evaluating, author = {Ahmed-Nacer, Mehdi and Ignat, Claudia-Lavinia and Oster, G{\'e}rald and Roh, Hyun-Gul and Urso, Pascal}, title = {Evaluating {CRDTs} for real-time document editing}, booktitle = {11th ACM Symposium on Document Engineering}, series = {DocEng 2011}, year = {2011}, pages = {103--112}, publisher = {ACM}, month = sep, doi = {10.1145/2034691.2034717}, pdf = {https://hal.inria.fr/docs/00/62/95/03/PDF/doce63-ahmednacer.pdf}, keywords = {text-editing} }
@inproceedings{Zawirski2011rebalancing, author = {Zawirski, Marek and Shapiro, Marc and Pregui\c{c}a, Nuno}, title = {Asynchronous rebalancing of a replicated tree}, booktitle = {Conf\'{e}rence Fran\c{c}aise en Syst\`{e}mes d'Exploitation}, series = {CFSE 2011}, year = {2011}, month = may, pdf = {http://renpar.irisa.fr/cfse8/cfse8_10.pdf}, keywords = {text-editing, Treedoc, core-nebula} }
@article{Roh2011RGA, author = {Roh, Hyun-Gul and Jeon, Myeongjae and Kim, Jin-Soo and Lee, Joonwon}, title = {Replicated Abstract Data Types: Building Blocks for Collaborative Applications}, journal = {Journal of Parallel and Distributed Computing}, volume = {71}, number = {3}, month = mar, year = {2011}, issn = {0743-7315}, pages = {354--368}, publisher = {Elsevier}, doi = {10.1016/j.jpdc.2010.12.006}, pdf = {http://csl.snu.ac.kr/papers/jpdc11.pdf}, keywords = {text-editing, RGA} }
@techreport{Shapiro2011comprehensive, author = {Shapiro, Marc and Pregui{\c c}a, Nuno and Baquero, Carlos and Zawirski, Marek}, title = {A comprehensive study of Convergent and Commutative Replicated Data Types}, year = {2011}, number = {7506}, month = jan, institution = {INRIA}, type = {Research Report}, url = {http://hal.inria.fr/inria-00555588/}, keywords = {introduction} }
@inproceedings{Martin2010xml, author = {Martin, St{\'e}phane and Urso, Pascal and Weiss, St{\'e}phane}, title = {Scalable {XML} Collaborative Editing with Undo}, booktitle = {On the Move to Meaningful Internet Systems (OTM)}, year = {2010}, pages = {507--514}, publisher = {Springer LNCS volume 6426}, month = oct, doi = {10.1007/978-3-642-16934-2_37}, eprint = {1010.3615}, keywords = {trees, undo} }
@article{Weiss2010LogootUndo, author = {Weiss, Stephane and Urso, Pascal and Molli, Pascal}, title = {{Logoot-Undo}: Distributed Collaborative Editing System on {P2P} Networks}, journal = {IEEE Transactions on Parallel and Distributed Systems}, volume = {21}, number = {8}, month = aug, year = {2010}, issn = {1045-9219}, pages = {1162--1174}, publisher = {IEEE}, doi = {10.1109/TPDS.2009.173}, pdf = {https://www.researchgate.net/profile/Pascal_Urso/publication/233882440_Logoot-Undo_Distributed_Collaborative_Editing_System/links/0fcfd50c84f5194937000000.pdf}, keywords = {text-editing, Logoot, undo} }
@inproceedings{Grishchenko2010hypertext, author = {Grishchenko, Victor}, title = {Deep Hypertext with Embedded Revision Control Implemented in Regular Expressions}, booktitle = {6th International Symposium on Wikis and Open Collaboration}, series = {WikiSym 2010}, year = {2010}, month = jul, publisher = {ACM}, articleno = {3}, doi = {10.1145/1832772.1832777}, url = {http://www.st.ewi.tudelft.nl/victor/articles/ctre.pdf}, keywords = {text-editing} }
@article{Letia2010consistency, author = {Letia, Mihai and Pregui{\c c}a, Nuno and Shapiro, Marc}, title = {Consistency without concurrency control in large, dynamic systems}, journal = {ACM SIGOPS Operating Systems Review}, year = {2010}, volume = {44}, number = {2}, pages = {29--34}, month = apr, publisher = {ACM}, doi = {10.1145/1773912.1773921}, pdf = {http://asc.di.fct.unl.pt/~nmp/pubs/osr-2010.pdf}, keywords = {introduction} }
@inproceedings{Preguica2009Treedoc, author = {Pregui{\c c}a, Nuno and Marques, Joan Manuel and Shapiro, Marc and Letia, Mihai}, title = {A Commutative Replicated Data Type for Cooperative Editing}, booktitle = {29th IEEE International Conference on Distributed Computing Systems}, series = {ICDCS 2009}, year = {2009}, pages = {395--403}, publisher = {IEEE}, doi = {10.1109/ICDCS.2009.20}, pdf = {https://hal.inria.fr/inria-00445975/document}, keywords = {text-editing, Treedoc} }
@inproceedings{Weiss2009Logoot, author = {Weiss, Stephane and Urso, Pascal and Molli, Pascal}, title = {{Logoot}: A Scalable Optimistic Replication Algorithm for Collaborative Editing on {P2P} Networks}, booktitle = {29th IEEE International Conference on Distributed Computing Systems}, series = {ICDCS 2009}, year = {2009}, pages = {404--412}, publisher = {IEEE}, doi = {10.1109/ICDCS.2009.75}, pdf = {https://hal.inria.fr/inria-00432368/document}, keywords = {text-editing, Logoot} }
@inproceedings{Weiss2007Wooki, author = {Weiss, St{\'e}phane and Urso, Pascal and Molli, Pascal}, title = {{Wooki}: A {P2P} Wiki-Based Collaborative Writing Tool}, booktitle = {8th International Conference on Web Information Systems Engineering}, series = {WISE 2007}, year = {2007}, pages = {503--512}, publisher = {Springer LNCS volume 4831}, month = dec, doi = {10.1007/978-3-540-76993-4_42}, pdf = {http://pagesperso.lina.univ-nantes.fr/~molli-p/pmwiki/uploads/Main/weiss07.pdf}, keywords = {text-editing, WOOTO} }
@inproceedings{Oster2006WOOT, author = {Oster, G{\'e}rald and Urso, Pascal and Molli, Pascal and Imine, Abdessamad}, title = {Data consistency for {P2P} collaborative editing}, booktitle = {20th ACM Conference on Computer Supported Cooperative Work}, series = {CSCW 2006}, year = {2006}, pages = {259--268}, publisher = {ACM}, month = nov, doi = {10.1145/1180875.1180916}, pdf = {https://hal.inria.fr/file/index/docid/108523/filename/OsterCSCW06.pdf}, keywords = {text-editing, WOOT} }
@techreport{Oster2005WOOT, author = {Oster, G{\'e}rald and Urso, Pascal and Molli, Pascal and Imine, Abdessamad}, title = {Real time group editors without operational transformation}, year = {2005}, number = {RR-5580}, month = may, institution = {INRIA}, type = {Research Report}, url = {https://hal.inria.fr/inria-00071240/document}, keywords = {text-editing, WOOT} }
This file was generated by bibtex2html 1.99.


So the death penalty is just yet the purpose of such punishments is to inflict pain upon people as deterrence from crime.
If this is the case, then the death penalty, which provides a painless death, should not be used. Rather, the more painful punishment would be life in prison.