Wiki/Research/Methodology/Scientific Method for Computer ScienceScientific Method for Computer ScienceChapter·Draft·Updated Aug 9, 2026This chapter is currently a scaffold.NextExperimental DesignAll chaptersMathematicsFoundationsProofs and LogicDiscrete StructuresCombinatoricsGraph TheoryLinear AlgebraLinear Algebra — Vectors and MatricesLinear Algebra — Vector SpacesLinear Algebra — Eigenvalues and DecompositionsCalculusCalculus — DifferentiationCalculus — Multivariable CalculusProbabilityProbability — FoundationsProbability — Random Variables and DistributionsProbability — Expectation and ConcentrationStatisticsStatistics — EstimationStatistics — Inference and Experimental DesignOptimizationOptimization — FundamentalsOptimization — Convex OptimizationOptimization — Numerical MethodsInformation and ComputationInformation TheoryNumerical ComputationNumerical Linear AlgebraComputer ScienceAlgorithms and Data StructuresData StructuresAlgorithm AnalysisSearching and SortingHashingTrees and HeapsGraph AlgorithmsGreedy AlgorithmsDynamic ProgrammingRandomized AlgorithmsAmortized AnalysisTheory of ComputationFormal Languages and AutomataComputabilityComplexity TheorySystemsComputer ArchitectureData Representation and Machine InstructionsAssembly and the Machine BoundaryProcessor MicroarchitecturePipelines and Branch PredictionCaches and Memory HierarchyOperating SystemsProcesses and ThreadsOperating-System SchedulingVirtual MemoryFilesystems and StorageConcurrencyConcurrency FundamentalsSynchronizationAtomics and Memory OrderingLock-Free AlgorithmsNetworkingNetworking FoundationsInternet Protocol and RoutingTransport ProtocolsDNS, HTTP and TLSDatabasesDatabase Storage EnginesDatabase IndexesTransactions and IsolationQuery Planning and OptimizationDistributed SystemsDistributed-Systems FoundationsReplication and ConsistencyConsensusDistributed TransactionsDistributed StorageCompilersCompiler Front EndsIntermediate RepresentationsCompiler OptimizationCode Generation and Runtime SystemsPerformance EngineeringPerformance MeasurementProfiling and ObservabilityMachine LearningClassical Machine LearningLearning FoundationsLinear RegressionLogistic RegressionTrees and EnsemblesKernel Methods and Support-Vector MachinesClusteringPrincipal Component AnalysisGeneralization and Model SelectionProbabilistic Machine LearningNeural NetworksNeural-Network FoundationsBackpropagationAutomatic DifferentiationDeep-Learning OptimizationConvolutional Neural NetworksSequence ModelsTransformers and Language ModelsAttentionTransformersTokenizationLanguage ModelingLanguage-Model Training and AdaptationGenerative ModelingReinforcement LearningReinforcement-Learning FoundationsMarkov Decision ProcessesValue Functions and Bellman EquationsTemporal-Difference LearningQ-LearningPolicy GradientsActor-Critic MethodsModel-Based Reinforcement LearningExplorationOffline Reinforcement LearningImitation LearningML SystemsGPU ComputingGPU ArchitectureGPU Execution and MemoryCUDA ProgrammingGPU Kernel OptimizationRuntimes and FrameworksTensor RuntimesAutomatic-Differentiation SystemsML CompilersML Compiler FoundationsGraph Optimization and Kernel FusionTraining at ScaleDistributed TrainingTraining ParallelismInferenceModel ServingInference RuntimesBatching and SchedulingAttention CachingEfficiencyQuantizationPruning and SparsityKnowledge DistillationSmall Language ModelsEdge Machine LearningHardware-Aware OptimizationAlgorithm-Hardware Co-DesignResearchMethodologyScientific Method for Computer ScienceExperimental DesignBenchmark MethodologyWorking with PapersResearch Paper ReadingPaper ReproductionAblation StudiesLiterature MappingResearch PracticeScientific WritingResearch QuestionsResearch Log