human: Given a node-centered hypergraph: <hypergraph>, where nodes represent papers and hyperedges represent sets of papers co-cited by a source paper.

Details of the hypergraph:
Center node: "proving linearizability using forward simulations"
  Abstract: Linearizability is the standard correctness criterion concurrent data structures such as stacks and queues. It allows to establish observational refinement between a concurrent implementation and an atomic reference implementation.Proving linearizability requires identifying linearization points for each method invocation along all possible computations, leading to valid sequential executions, or alternatively, establishing forward and backward simulations. In both cases, carrying out proofs is hard and complex in general. In particular, backward reasoning is difficult in the context of programs with data structures, and strategies for identifying statically linearization points cannot be defined for all existing implementations. In this paper, we show that, contrary to common belief, many such complex implementations, including, e.g., the Herlihy&Wing Queue and the Time-Stamped Stack, can be proved correct using only forward simulation arguments. This leads to conceptually simple and natural correctness proofs for these implementations that are amenable to automation.

Connected through hyperedge HE-1 (induced by source paper "pointer life cycle types for lock free data structures with memory reclamation"):
  with members:
    - "hyaline fast and transparent lock free memory reclamation"
    - "decoupling lock free data structures from memory reclamation for static analysis"
    - "safe deferred memory reclamation with types"
    - "reasoning about tso programs using reduction and abstraction"
    - "reclaiming memory for lock free data structures there has to be a better way"
    - "verifying concurrent stacks by divergence sensitive bisimulation"
    - "effect summaries for thread modular analysis"
    - "concurrent data structures linked in time"

Connected through hyperedge HE-2 (induced by source paper "quantifiability concurrent correctness from first principles"):
  with members:
    - "specifying concurrent programs in separation logic morphisms and simulations"
    - "order out of chaos proving linearizability using local views"
    - "distributionally linearizable data structures"
    - "benchmarking concurrent priority queues performance of k lsm and related data structures"
    - "the lock free k lsm relaxed priority queue"
    - "a dynamic elimination combining stack algorithm"

Connected through hyperedge HE-3 (induced by source paper "specifying concurrent programs in separation logic morphisms and simulations"):
  with members:
    - "concurrent data structures linked in time"
    - "hoare style specifications as correctness conditions for non linearizable concurrent objects"
    - "between linearizability and quiescent consistency quantitative quiescent consistency"
    - "specifying and verifying concurrent algorithms with histories and subjectivity"
    - "linearizability with ownership transfer"
    - "flat combining and the synchronization parallelism tradeoff"

Connected through hyperedge HE-4 (induced by source paper "putting strong linearizability in context preserving hyperproperties in programs that use concurrent objects"):
  with members:
    - "strongly linearizable implementations of snapshots and other types"
    - "a temporal logic for hyperproperties"
    - "linearizable implementations do not suffice for randomized distributed computation"
    - "randomized protocols for asynchronous consensus"

Connected through hyperedge HE-5 (induced by source paper "verifying visibility based weak consistency"):
  with members:
    - "concurrent data structures linked in time"
    - "aspect oriented linearizability proofs"
    - "on reducing linearizability to state reachability"
    - "automated verification of practical garbage collectors"

Connected through hyperedge HE-6 (induced by source paper "decoupling lock free data structures from memory reclamation for static analysis"):
  with members:
    - "verification of tree based hierarchical read copy update in the linux kernel"
    - "reclaiming memory for lock free data structures there has to be a better way"
    - "verifying concurrent stacks by divergence sensitive bisimulation"
    - "effect summaries for thread modular analysis"
    - "concurrent data structures linked in time"
    - "pointer race freedom"
    - "faster linearizability checking via p compositionality"
    - "verifying linearizability a comparative survey"

Question: Please tell me which class the center node belongs to. The 40 classes are: cs.NA(Numerical Analysis), cs.MM(Multimedia), cs.LO(Logic in Computer Science), cs.CY(Computers and Society), cs.CR(Cryptography and Security), cs.DC(Distributed, Parallel, and Cluster Computing), cs.HC(Human-Computer Interaction), cs.CE(Computational Engineering, Finance, and Science), cs.NI(Networking and Internet Architecture), cs.CC(Computational Complexity), cs.AI(Artificial Intelligence), cs.MA(Multiagent Systems), cs.GL(General Literature), cs.NE(Neural and Evolutionary Computing), cs.SC(Symbolic Computation), cs.AR(Hardware Architecture), cs.CV(Computer Vision and Pattern Recognition), cs.GR(Graphics), cs.ET(Emerging Technologies), cs.SY(Systems and Control), cs.CG(Computational Geometry), cs.OH(Other Computer Science), cs.PL(Programming Languages), cs.SE(Software Engineering), cs.LG(Machine Learning), cs.SD(Sound), cs.SI(Social and Information Networks), cs.RO(Robotics), cs.IT(Information Theory), cs.PF(Performance), cs.CL(Computation and Language), cs.IR(Information Retrieval), cs.MS(Mathematical Software), cs.FL(Formal Languages and Automata Theory), cs.DS(Data Structures and Algorithms), cs.OS(Operating Systems), cs.GT(Computer Science and Game Theory), cs.DB(Databases), cs.DL(Digital Libraries), cs.DM(Discrete Mathematics). Directly output the class name.

gpt: cs.PL(Programming Languages)