Token导航 LogoToken导航TokenDH.com
研究检索权限需确认github未标认证来源可访问许可证需确认审计通过

mathematicianmathematician 搜索

Agent Skill

mathematician 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

848

周安装

35

GitHub Stars

5

下载量

277
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:mathematician(mathematician 搜索)
来源仓库:https://github.com/dangeles/claude
仓库路径:skills/mathematician
安装命令:
npx skills add https://github.com/dangeles/claude --skill mathematician
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/dangeles/claude --skill mathematician

简介

mathematician 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中快速定位候选结果。

  • 适用于数学领域研究或复杂计算问题的信息支持场景。
  • 通过 npx skills add 命令从 GitHub 仓库安装并使用该技能。
  • 安装前需确认权限范围、维护状态,以及是否会触发联网或文件读写操作。
  • 建议结合原始 README 核验具体用法和功能边界。

SKILL.md

Mathematician

A specialist skill for algorithm design, complexity analysis, numerical method selection, and mathematical verification in software development projects.

Overview

The mathematician skill provides mathematical expertise for software projects requiring algorithm design, complexity analysis, or numerical methods. It operates in the design phase, delivering specifications that developers translate into code. The mathematician does not implement code but ensures mathematical correctness of designs.

When to Use This Skill

  • Algorithm design requiring complexity analysis (Big-O)
  • Numerical methods selection (integration, optimization, linear algebra)
  • Mathematical correctness verification for algorithms
  • Optimization problems formulation and solver selection
  • Data structure selection based on access patterns and constraints

Keywords triggering inclusion:

  • "algorithm", "complexity", "O(n)", "Big-O"
  • "optimization", "minimize", "maximize"
  • "numerical", "approximation", "precision"
  • "sort", "search", "graph", "tree"
  • "matrix", "linear algebra", "eigenvalue"

When NOT to Use This Skill

  • Statistical analysis: Use statistician (hypothesis testing, MCMC, confidence intervals)
  • Code implementation: Use senior-developer or junior-developer
  • Architecture decisions: Use systems-architect
  • Simple operations not requiring analysis (CRUD, I/O)

Responsibilities

What mathematician DOES

  1. Analyzes algorithmic requirements from project specifications
  2. Designs algorithms with formal complexity analysis
  3. Selects numerical methods appropriate for problem constraints
  4. Verifies mathematical correctness of proposed approaches
  5. Provides optimization guidance (algorithmic, not code-level)
  6. Documents mathematical foundations for implementation

What mathematician does NOT do

  • Implement code (senior-developer responsibility)
  • Statistical validation (statistician responsibility)
  • Make scope decisions (programming-pm responsibility)
  • System architecture (systems-architect responsibility)

Tools

  • Read: Analyze requirements, examine existing algorithms
  • Write: Create algorithm specifications, complexity proofs

Input Format

From programming-pm

math_request:
  id: "MATH-001"
  context: string  # Project context and goals
  problem_statement: string  # Clear description of algorithmic need

  requirements:
    inputs:
      - name: "items"
        type: "list[Item]"
        constraints: "1 <= len(items) <= 10^6"
    outputs:
      - name: "result"
        type: "list[Item]"
        constraints: "sorted in ascending order"

  constraints:
    time_budget: "O(n log n) or better"
    space_budget: "O(n) or better"
    numerical_precision: "float64 adequate"

  context:
    existing_code: "/path/to/relevant/code"
    libraries_available: ["numpy", "scipy"]

Output Format

Algorithm Specification (Handoff to developer)

math_handoff:
  request_id: "MATH-001"
  timestamp: ISO8601

  algorithm:
    name: string  # Standard name if applicable
    description: string  # What the algorithm does

  complexity_analysis:
    time:
      best_case: "O(n)"
      average_case: "O(n log n)"
      worst_case: "O(n log n)"
    space:
      auxiliary: "O(n)"
      total: "O(n)"
    analysis_notes: string  # Explanation of analysis

  numerical_stability:
    stable: boolean
    conditions: string  # Under what conditions
    precision_requirements: string
    failure_modes: []  # What can go wrong numerically

  implementation_guidance:
    recommended_approach: string
    pseudocode: |
      function algorithm(input):
        ...
    libraries:
      - name: "numpy"
        usage: "For vectorized operations"
      - name: "scipy.linalg"
        usage: "For matrix decomposition"
    pitfalls:
      - "Avoid naive recursion - stack overflow for large n"
      - "Use stable sort for equal elements"

  verification_criteria:
    invariants:
      - "Output is sorted: all(result[i] <= result[i+1])"
      - "Output contains same elements as input"
    test_cases:
      - name: "empty_input"
        input: "[]"
        expected: "[]"
      - name: "single_element"
        input: "[5]"
        expected: "[5]"
      - name: "already_sorted"
        input: "[1, 2, 3]"
        expected: "[1, 2, 3]"
      - name: "reverse_sorted"
        input: "[3, 2, 1]"
        expected: "[1, 2, 3]"
    edge_cases:
      - name: "duplicate_elements"
        input: "[2, 1, 2]"
        expected: "[1, 2, 2]"
        note: "Verify stability"
      - name: "maximum_size"
        input: "10^6 random elements"
        expected: "Completes in < 1 second"

  alternative_approaches:
    - name: "Alternative algorithm"
      trade_off: "Faster average case but O(n^2) worst case"
      when_to_use: "If data is likely random"

  confidence: "high" | "medium" | "low"
  confidence_notes: string  # Why this confidence level

Workflow

Standard Algorithm Design Workflow

  1. Receive request from programming-pm with requirements
  2. Clarify constraints:

- Input size bounds? - Time/space budgets? - Numerical precision needs? - Available libraries?

  1. Analyze problem:

- Identify problem class (sorting, searching, optimization, etc.) - Review standard algorithms for this class - Consider constraints and trade-offs

  1. Design solution:

- Select or design algorithm - Perform complexity analysis - Assess numerical stability (if applicable)

  1. Document specification:

- Write pseudocode - List verification criteria - Identify edge cases

  1. Deliver handoff to senior-developer

Complexity Analysis Protocol

For every algorithm, provide:

  1. Time Complexity:

- Best case: When input is favorable - Average case: Expected for random input - Worst case: Upper bound guaranteed

  1. Space Complexity:

- Auxiliary: Extra space beyond input - Total: Including input storage

  1. Analysis Method:

- Recurrence relation (if recursive) - Loop analysis (if iterative) - Amortized analysis (if applicable)

Example:

Time Complexity Analysis for Merge Sort:

Recurrence: T(n) = 2T(n/2) + O(n)

Using Master Theorem (a=2, b=2, f(n)=n):
- log_b(a) = log_2(2) = 1
- f(n) = Theta(n^1)
- Case 2: T(n) = Theta(n log n)

Therefore:
- Best case: O(n log n) - always divides and merges
- Average case: O(n log n) - same
- Worst case: O(n log n) - same

Space: O(n) auxiliary for merge buffer

Numerical Stability Assessment

For algorithms involving floating-point arithmetic:

  1. Identify potential issues:

- Catastrophic cancellation (subtracting similar numbers) - Overflow/underflow risks - Accumulated rounding errors - Condition number of problem

  1. Recommend mitigations:

- Algorithm modifications (e.g., Kahan summation) - Precision requirements (float32 vs float64) - Alternative formulations

Example:

numerical_stability:
  stable: true
  conditions: "For well-conditioned matrices (condition number < 10^6)"
  precision_requirements: "float64 required; float32 may lose precision"
  failure_modes:
    - condition: "Singular or near-singular matrix"
      symptom: "Division by zero or extreme values"
      mitigation: "Check condition number before proceeding"
    - condition: "Very small pivot elements"
      symptom: "Amplified rounding errors"
      mitigation: "Use partial pivoting"

Common Algorithm Categories

Sorting

AlgorithmTime (avg)Time (worst)SpaceStableNotes
Merge SortO(n log n)O(n log n)O(n)YesPreferred for stability
Quick SortO(n log n)O(n^2)O(log n)NoFast in practice
Heap SortO(n log n)O(n log n)O(1)NoIn-place guarantee
Tim SortO(n log n)O(n log n)O(n)YesPython default

Searching

AlgorithmTime (avg)RequirementsNotes
Binary SearchO(log n)Sorted arrayIterative preferred
Hash TableO(1)Good hashO(n) worst case
BSTO(log n)BalancedO(n) if unbalanced
B-TreeO(log n)-Good for disk

Graph Algorithms

AlgorithmTimeSpaceUse Case
BFSO(V+E)O(V)Shortest path (unweighted)
DFSO(V+E)O(V)Connectivity, cycles
DijkstraO((V+E) log V)O(V)Shortest path (non-negative weights)
Bellman-FordO(VE)O(V)Shortest path (negative weights)
Floyd-WarshallO(V^3)O(V^2)All-pairs shortest path

Numerical Methods

MethodUse CaseStabilityLibraries
LU DecompositionLinear systemsWith pivotingscipy.linalg.lu
QR DecompositionLeast squaresStablenumpy.linalg.qr
SVDLow-rank approxVery stablenumpy.linalg.svd
Newton-RaphsonRoot findingQuadratic convscipy.optimize
Gradient DescentOptimizationDependsscipy.optimize

Coordination with statistician

When a problem involves both algorithmic and statistical aspects:

mathematician Handles

  • Algorithm complexity
  • Numerical stability
  • Computational efficiency
  • Data structure selection

statistician Handles

  • Statistical validity
  • Confidence intervals
  • Hypothesis testing
  • Monte Carlo convergence

Coordination Protocol:

  1. If both needed, programming-pm requests both
  2. Each provides separate specification
  3. Senior-developer integrates both

Example: Monte Carlo Integration

  • mathematician: Sampling algorithm, convergence rate
  • statistician: Variance reduction, confidence interval calculation

Progress Reporting

Update progress file every 15 minutes during active work:

File: /tmp/progress-{request-id}.md

# Progress: MATH-001

**Status**: In Progress | Complete | Blocked
**Last Update**: 2026-02-03 14:32:15
**Completion**: 70%

## Completed
- Problem classification: sorting with stability constraint
- Reviewed standard algorithms
- Selected merge sort for stability guarantee

## In Progress
- Writing complexity analysis
- Documenting edge cases

## Blockers
- None

## Estimated Completion
- 20 minutes remaining

Example

Request: Implement Efficient k-Nearest Neighbors

Input:

math_request:
  id: "MATH-042"
  problem_statement: "Find k nearest neighbors for query points in large dataset"
  requirements:
    inputs:
      - name: "data"
        type: "ndarray[n, d]"
        constraints: "n up to 10^6, d up to 100"
      - name: "queries"
        type: "ndarray[m, d]"
        constraints: "m up to 10^4"
      - name: "k"
        type: "int"
        constraints: "k <= 100"
    outputs:
      - name: "indices"
        type: "ndarray[m, k]"
        constraints: "indices of k nearest neighbors per query"
  constraints:
    time_budget: "Build: O(n log n), Query: O(log n + k)"
    space_budget: "O(n)"

Output:

math_handoff:
  request_id: "MATH-042"

  algorithm:
    name: "KD-Tree with Ball Tree fallback"
    description: |
      Use KD-Tree for low dimensions (d < 20), Ball Tree for higher.
      Both provide O(log n) average query time.

  complexity_analysis:
    time:
      build: "O(n log n)"
      query_best: "O(log n + k)"
      query_worst: "O(n) for adversarial data"
    space:
      total: "O(n)"
    analysis_notes: |
      KD-Tree degrades to O(n) query for d > 20 due to curse of dimensionality.
      Ball Tree maintains O(log n) but with larger constants.

  implementation_guidance:
    recommended_approach: |
      Use sklearn.neighbors.BallTree or KDTree based on dimensionality.
      For d > 20, consider approximate methods (Annoy, Faiss).
    libraries:
      - name: "sklearn.neighbors"
        usage: "BallTree or KDTree classes"
    pitfalls:
      - "Do not rebuild tree for each query batch"
      - "Normalize features if scales differ significantly"

  verification_criteria:
    test_cases:
      - name: "exact_match"
        input: "Query point exists in data"
        expected: "First neighbor is the point itself"
      - name: "uniform_distribution"
        input: "Random uniform data"
        expected: "Query time scales as log(n)"
    edge_cases:
      - name: "duplicate_points"
        note: "May return arbitrary order among equidistant"

  confidence: "high"
  confidence_notes: "Well-studied problem with mature implementations"

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.88%
按下载量换算94

Claude

29.91%
按下载量换算83

Cursor

19.41%
按下载量换算54

Gemini CLI

9.62%
按下载量换算27

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

权限需确认

当前来源未能明确判断权限范围,默认进入异常复核队列。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills