dataesr/scientific-paragraphs-categorization huggingface dataset:
The standard k-epsilon model with standard wall function were used to perform CFD simulation and the mesh size was increased to check if the results get more accurate. The meshing discretization was made in Autodesk CFD Simulation software. Without adjusting the size based on local curvature and having both fluid and solid zones we have a first mesh of 4. 6 M elements, both for static and underfloor heating systems simulations. For the next three simulation we increased the refinement resulting a number of 8. 6 M elements (Fig. 18 ).
The material complexity allowed by additive manufacturing (AM) has made smart materials (SMs) processing easier than usually, giving birth to the so called 4D printing (4DP). This has expanded further the design space around AM. Yet, for this design space to be embraced by designers, there is the need to make SMs modeling and simulation easier, especially in conceptual design. Previously, efforts have been dedicated to a voxel-based modeling and simulation framework for SMs showing how important are material distributions (MDs) when it comes to design for 4DP. Here, a twofold contribution is made to design for 4DP. First a computational tool embodying the previously developed theoretical framework is introduced. This tool -VoxSmart -harnesses the power and the convenience of the graphical algorithm editor Grasshopper® within the CAD software Rhinoceros® to SMs modeling and simulation.
Building on this research initiative, we introduce a design tool -called VoxSmart -embodying the proposed framework. It is a tool based on the graphical algorithm editor Grasshopper® (GH), an add-on of the commercial CAD software Rhinoceros© (RH). The purpose is to make the modeling and simulation scheme usable in a form that benefits a large spectrum of designers. Furthermore and most importantly a methodology is provided to compute MDs based on the modeling framework. As such the reader is advised to refer to  [21]  for the theoretical foundations behind VoxSmart and the proposed MD computation engine.
Introduction to VoxSmart The proposed modeling scheme introduced in  [21]  for SMs simulation has been made tangible by a computational design tool. The framework has been implemented in the RH  [22]  add-on Grasshopper® (GH). RH is a CAD explicit modeling software allowing a seamless design of complex shapes. GH is a graphical algorithm editor (without the need of any script) that allows form generation (in RH environment) and virtually any computation. A graphical algorithm is typically a collection of components (running each a computation) connected by wires, which are the data flowing through them. What makes the GH computation engine virtually infinitely expandable is the possibility to develop plugins for specific tasks (e. g. design, simulation, even manufacturing control). There is a rapidly growing GH community of users (namely designers) and plugins developers.
7 ) whose genes are the entries of the array representation. As fitness function we used the squared norm of the vector formed by the difference between and : ! "" # $ # %. On a computation aspect, the power of the Matlab®  [24]  GA tool box has been harnessed to solve the problem. A semi-automatic interoperability between VoxSmart and Matlab® has been created. Basically a VoxSmart component has been developed to handle the input problem: source shape, target shape, set of materials, boundary conditions and stimulus state. The component then computes and stores it, along with the other input, in a matrix form. All the constructed matrices are finally packed in a. mat file, which is subsequently loaded in Matlab®. A script has then been written in Matlab® to handle the input problem and run the optimization problem with the built-in GA toolbox.
Acknowledgements This research activity is part of much larger project in the field of design for 4D printing. The authors would like to thank the  Ministère de l'Enseignement Supérieure et de la Recherche , the  French "Investissements d'Avenir" program , project  ISITE-BFC  (contract  ANR-15-IDEX-0003 ) as main financial supports of this research program, and S. mart  Franche-Comté network  for their participation.
Tools The following tools are publicly available and they support both the qualitative and the quantitative semantics for monitoring CPSs. 1. AMT 2. 0  [257] : available at http://www-verimag. imag. fr/DIST-TOOLS/TEMPO/ AMT/content. html 2. Breach  [132] : available at https://github. com/decyphir/breach 3. S-Taliro  [16] : available at https://sites. google. com/a/asu. edu/s-taliro/ 4. U-Check  [82] : available at https://github. com/dmilios/U-check The AMT 2. 0 tool  [257]  provides a framework for the qualitative and quantitative analysis of xSTL, which is an extended Signal Temporal Logic that integrates TRE with STL requirements over analog system output signals. The software tool AMT is a standalone executable with a graphical interface enabling the user to specify xSTL properties, the signals and whether the analysis is going to be offline or incremental.
Security and Privacy In the last years there has been a huge explosion in the availability of large volumes of data. Large integrated datasets can potentially provide a much deeper understanding of both nature and society and open up many new avenues of research. These datasets are critical for addressing key societal problems-from offering personalized services, improving public health and managing natural resources intelligently to designing better cities and coping with climate change. More and more applications are deployed in our smart devices and used by our browsers in order to offer better services. However, this comes at a price: on one side most services are offered in exchange of personal data, but on the other side the complexity of the interactions of such applications and services makes it difficult to understand and track what these applications have access to, and what they do with the users' data.
After that, dynamic information flow approaches have been proposed for different settings (e. g. JavaScript  [33] , or applied to databases  [336] ). The main advantage of dynamic information flow is its ability to deal with dynamic languages and dynamic security policies. It is also usually more permissive than static approaches with respect to non-interference: dynamic approaches may accept secure flows that would be rejected statically. However, pure dynamic approaches have a major drawback: they cannot take into account the branches uncovered by the examined executions and so they may miss (indirect) insecure flows. In particular, Russo and Sabelfeld  [292]  demonstrated that pure dynamic approaches cannot be sound with respect to flow-sensitive non-interference, in the form of Hunt and Sands  [196].
Browser Extensions Browser extensions are small applications executed in a browser context in order to provide additional capabilities and enrich the user experience while surfing the web. The acceptance of extensions in current browsers is unquestionable. For instance, as of 2018, Chrome's official extension repository has more than 140,000 applications, with some of these extensions having more than 10 million users. When an extension is installed, the browser often pops up a message showing the permissions that this new extension requests and, upon user approval, the extension is then installed and integrated within the browser. Extensions run through the JavaScript event listener system. An extension can subscribe to a set of events associated with the browser (e. g. , when a new tab is opened or a new bookmark is added) or the content (e.
A related issue has to do with implementation: a robust runtime enforcement mechanism might need to modify the core of the browser (e. g. , Chromium), which is quite invasive and requires a high level of expertise. C23. Privacy and security policies. One challenge is how to define security and privacy policy languages to write policies about concrete known threats. Also, this challenge involves the use of runtime monitoring techniques in order to detect potential and real threats, log that information and give this to an offline analyzer to identify patterns in order to generalize existing policies, or create new ones. A related challenge is how to learn the policies at runtime. This could be done by learning them from the attacker models (e. g. , as in  [1] ), and improve the precision taking feedback from the runtime monitors.
Database systems have successfully exploited parallelism for decades, both at software and hardware levels. Databases can improve their performance by issuing many queries simultaneously and by running those queries on multiple computing systems in parallel, while preserving the same programming model as if the queries were executed one at a time in a single computing system. Transactions are at the core of most database systems. A transaction is an abstraction that specifies a program semantics where computations behave as if they are executing one at a time with exclusive access to the database. Transactional systems implement a serializable model. This means that even if the system allows multiple transactions to execute concurrently, the final result of their execution must be indistinguishable from executing one after the other (in some total order).
Dependable Storage Systems Main database vendors, such as IBM and Oracle, have business solutions for highperformant dependable storage systems. Innovative approaches to such dependable storage systems are based on state machine replication, either in KV-stores  [75, 201, 305] , filesystems  [96, 230] , or transactional storages  [143, 173]. These systems are frequently used to build business-critical (and sometimes even life-critical) systems and must be constantly monitored to assess the correct behavior of the storage system. Monitoring these systems, specially those involving SMR, both in terms of the architecture of monitoring system itself and of the information to be collects to reason upon, is an open and very interesting challenge.
Coordination services Concurrent operations on distributed applications frequently need to be coordinated to ensure system correctness. These services are often provided by a small database, which stores configuration data to implement resource locking, leader election, message ordering, etc. Such coordination systems have been recently used in more complex solutions, for example in: i) Google's Chubby distributed lock service  [87] , which is used by Bigtable (now in production in Google Analytics and other products); ii) the Ceph storage system  [322] , where the coordination system is part of the monitor processes to agree which OSDs are up and in the cluster; iii) the Clustrix distributed SQL database, which leverages on a coordination system for distributed transaction resolution.
Network Services Software-Defined Networks (SDNs) are a step towards the separation of the network control plane from the data plane, aiming at improving the manageability, programmability and extensibility of networks. In these SDNs, the controller should neither be a bottleneck nor a single point of failure. State machine replication is a natural answer to such fault-tolerance requirements. For example, the Ananta distributed load balancer  [266]  uses Paxos for maintaining high-availability in its manager component and serves thousands of data flows per day in the Windows Azure cloud.
C25. Reduction of the conflicting window. When using the typical API to declare transactions (e. g. , begin, read, write, and commit) the system is blind to the application's semantics, i. e. , how values read are used by the application. Since transactional speculation is only effective when it succeeds, there is also the need to reduce the number of conflicting transactions by introducing variations in the typical API to declare transactions. The allows clients to express more clearly the intended semantics of the program while executing over an abstract replica state, resulting in fewer conflicts and thus more successful speculative executions. How to reduce both the interactions with the remote database nodes (replicas) and to the "conflicting window" for transactions? Some work has been done on delaying read accesses to the database using futures  [40]  and double barriers and epochs  [281].
The time-scale for transactional memory is orders of magnitude smaller than transactional databases. In transactional memory, each access to a shared memory location must be handled by the transactional monitor and considered for the success or failure of the memory transaction. Any additional probing or logging introduced by a monitoring system may influence the scheduling and have a strong impact in a malfunctioning transactional memory application, by changing the serialization order of the transactions, possibly masking or hiding previously observed errors. Researchers have partially addressed this challenge in the past  [129, 130, 234, 259]  aiming at both correctness and performance.
This concept of contract is also used in approaches such as the KeY program verification tool  [215]. (vii) In the context of web services, "contracts" may be understood as service-level agreements usually written in an XML-like language like IBM's Web Service Level Agreement (WSLA  [329] ). (viii) More recently, the term "contract" is used in the context of blockchain and other distributed ledger technologies as programs that ensure certain properties concerning transactions. These programs are called smart contracts  [309] , as popularized by the Ethereum platform  [88]. In this section we focus on the use of the term in the computational domain but with a richer interpretation than just a specification or property. In particular, we consider two types of contracts: normative documents (including conventional contracts and their electronic versions as described above), and smart contracts.
Unlike the previous approaches, Bersani et al. implemented the monitor on top of the Apache Spark framework  [340]  that is optimized for iterative distributed computations. Parametric trace slicing  [101, 283]  is a technique for monitoring a parametric LTL property by grounding it to several plain LTL properties. In this approach logged events are grouped into slices based on the values of the parameters. A slice is created for each parameter value or for each combination of values depending on the number of parameters. The individual slices are then processed by a propositional LTL monitor unaware of the parameters. The initial main goal of this approach was not scalability, but rather monitoring the more expressive parametric LTL specification language. However, the approach is also relevant for scalability since it easily lends itself to parallelization.
Complex Event Processing (CEP) and Data Stream Management Systems (DSMS), for example, can serve as specialized languages for building stream processors (see  [242]  for a recent survey). The query languages of DSMS are mostly extensions of SQL (e. g. , with window operators  [20] ), and thus typically much weaker than logics such as MFOTL due to the absence of proper negation and more limited capabilities for expressing temporal relationships. Moreover, DSMS tend to focus on efficient query execution at the expense of sacrificing a clean semantics of the property specifications. The reference model of DSMS has been defined in the seminal work on the Continuous Query Language (CQL)  [20]. In CQL, the processing of streams is split in three steps. i) Stream-to-relation operators-that is, windows-select a portion of each stream thus implicitly creating static database table.
Uncertainty can come from the monitored systems themselves which can exhibit stochastic and faulty behavior. Another related field is state inference of the monitored system using probabilistic approaches where a belief state is maintained and updated during monitoring. Although these approaches provide probabilistic guarantees as part of the resulting belief state, they perform a specific monitoring task. Existing work on approximate monitoring stems from the fields of databases  [38] , streaming algorithms  [253] , and property testing  [180]. All approaches can be classified based on two criteria: the specific queries they approximate and the resources they optimize. Commonly approximated queries in the literature are cardinality estimation  [155] , top-k items  [39] , frequent items (heavy hitters)  [214, 241, 338] , quantiles  [115, 338] , frequency moments  [113, 116] , entropy  [19] , other non-linear functions over (possibly distributed) streams, and distance queries  [7].
Orthogonally, the approaches either optimize memory consumption, communication cost, execution time, or the monitor's overhead. Optimizing memory consumption has led Morris to develop his well-known approximate algorithm for counting  [247]. The HyperLogLog algorithm  [155]  tackles the cardinality estimation problem mentioned in the example above. Counting the most frequent items in a stream is a very common query. In fact there has been an ample amount of work in devising good approximation algorithms. One of the oldest streaming algorithms for detecting frequent items is the MJRTY algorithm  [83]  and its generalizations  [123, 212, 244]. Optimizing communication cost is a common problem in the field of streaming databases. Consider k data streams and a monitor that consisting of k + 1 distributed components -one for every stream and an additional central coordinator.
This is enabled by sampling techniques  [114]  that are shown to work for specific queries. These techniques are often referred to as Approximate Query Processing (AQP) and they are implemented by many existing systems  [7, 248, 249, 307]. When sampling, a random sample is a "representative" subset of the data, obtained via some stochastic mechanism. Samples are quicker to obtain, smaller than the data itself and are hence used to answer queries more efficiently. A histogram summarizes the data by grouping its values into subsets (or "buckets") and then computing a small set of summary statistics for each bucket. These statistics allow to approximately reconstruct the data in each bucket. Wavelets are techniques by which a dataset is viewed as a set of M elements in a vector, i. e. , a function defined on the set {0, 1, 2,.
, M -1}. Such a function can be seen as a weighted sum of some carefully chosen wavelet "basis functions". Coefficients that are close to zero in magnitude can then be ignored, with the remaining small set of coefficients serving as the data summary. Sketches are particularly well-suited to streaming data. Linear sketches view a numerical dataset as a matrix, and multiply the data by some fixed matrix. Such sketches are massively parallelizable and used to successfully estimate answers to set cardinality, union and sum queries, as well as top-k or min-k queries. Optimizing monitoring overhead is a problem often encountered in runtime verification. When optimizing overhead, one must consider the monitored system in addition to the event stream. In this setting, computing resources (time, memory, and network) are shared by the monitored system and the monitor.
The incubations varied in mineral substrates, deployment temperature, and time, but all accessed the same subsurface crustal aquifer fluids. 16S rRNA gene amplicon sequence analysis of these low-biomass samples required the development of a new bioinformatics tool -TaxonSluice -for robust elimination of potential contaminant sequences. By comparing biofilm amplicon datasets recovered from our incubations to previously published metagenomic datasets from JdF and NP crustal fluids, as well as a metagenome from a subseafloor incubation of olivine at JdF, genetic differences with respect to potential activities of crust-attached biofilm and planktonic communities are assessed and the extent of biogeographical connectivity of the subseafloor crust is explored.
Microscopy, Geochemical, and DNA Analyses Methods used for sample preservation, scanning electron microscopy (SEM), geochemical analyses of the fluids exiting the FLOCS units, DNA extraction, quantitative polymerase chain reaction analysis of the small subunit ribosomal RNA (16S rRNA) gene, 16S rRNA gene amplicon sequencing via Illumina, and data processing steps are described in detail in the Supplementary Material. Due to low DNA concentrations in the extracts (Supplementary Table  S3 ), replicate extracts from similar experiments and minerals were pooled according to sample identity and further concentrated prior to 16S rRNA gene amplification. Extracts from procedural blanks were also pooled and sequenced to address2 inadvertent contamination, as described below. Sequence data was processed with mothur  (Schloss et al.
Correcting for Potential Contaminant 16S rRNA Gene Sequences: TaxonSluice As the amount of material available for analysis was limited, and the incubation settings are low biomass environments [i. e. : roughly 10 4 cells ml -1  (Jungbluth et al. , 2013) ], significant effort was invested in evaluating protocol blanks to assess for possible contamination in the sequence data, as recommended elsewhere  (Sheik et al. , 2018). To identify contaminant sequences in low-biomass samples, we developed a new bioinformatic tool: TaxonSluice. The code, sample datasets (data used for this study), validation efforts on mock communities, and additional user information (dependencies and user-set parameters) for this tool are publicly available on GitHub 1. Briefly, TaxonSluice implements a novel heuristic algorithm (Supplementary Material and Supplementary Figure  S1 ) with OTU tables and user input to specify blanks to identify potential contaminant sequences based on a user-defined abundance threshold (10% default).
In this study, extraction blanks were incorporated in each batch of sample extractions, enabling assessment of multiple blanks across the dataset. Algorithm outputs include a summary of all "flagged" OTUs (Supplementary Figure  S1 ) along with percent identity, percent coverage, e-value and environmental source for the 10 closest matches in the SILVA database. The user validates output prior to culling any of the flagged OTUs from the data. This multiple-blank approach is advantageous because each blank represents independent biological data, outside the single sample and sample-specific blank couple.
Linking Biofilm Amplicons and Metagenomic Data To assess taxonomic overlap between the biofilm communities in this study with crustal fluid communities and other biofilm studies, biofilm 16S rRNA gene amplicon sequences recovered from our FLOCS incubations were used to recruit metagenomic reads from crustal fluids from JdF  (Jungbluth et al. , 2017a)  and NP  (Tully et al. , 2018)  as well as from a subseafloor incubation of olivine at JdF  (Smith et al. , 2019). Thus, we highlight that differentiation of biofilm and planktonic cells in these comparisons is exclusively done in silico. These publicly available metagenomes were downloaded from the NCBI Sequence Read Archive: JdF crustal fluid (NCBI BioSamples SAMNO3166137 and SAMO3166138 for Hole U1362A and U1362B fluids, respectively), NP crustal fluid [NCBI BioSamples SAMN07571231-SAMN07571245 for Holes U1382A and U1383C at various sampling times and depths, see  Tully et al.