np-completeness

Audit NP-hardness proofs and polynomial-time reductions for decision problems.

7|Updated Apr 24, 2026
One-click install
npx skills add https://github.com/Arcadi4/nerdy --skill np-completeness
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: np-completeness
Source: https://github.com/Arcadi4/nerdy/tree/main/clrs/np-completeness
Command: npx skills add https://github.com/Arcadi4/nerdy --skill np-completeness

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill helps researchers and students formally verify NP-hardness and NP-completeness by guiding the creation of polynomial-time reductions, defining decision languages, and validating certificate-based NP-membership.

Core Features & Use Cases

  • Define a problem's decision language and input encoding.
  • Propose reductions from canonical NP-complete problems (SAT, CIRCUIT-SAT, CLIQUE, VERTEX-COVER, HAM-CYCLE, TSP, SUBSET-SUM) and prove forward and reverse directions.
  • Provide a structured framework for completeness proofs, including encoding size arguments and reduction composition.

Quick Start

Outline a complete NP-completeness analysis for a target problem by selecting a known NP-complete source, constructing a polynomial-time reduction, and proving membership and hardness.

Frequently Asked Questions about np-completeness

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I construct a polynomial-time reduction to prove NP-completeness for a decision problem?▼

To prove NP-completeness, construct a polynomial-time reduction from a known NP-complete problem like SAT or CLIQUE to your target decision problem, verifying both forward and reverse directions along with polynomial construction bounds.

What is the correct way to define a decision language for an NP-hardness proof?▼

Defining a decision language for an NP-hardness proof requires specifying the problem's input encoding and certificate verification process to establish NP-membership before proving NP-hardness through polynomial-time reductions.

Can I verify reductions from classic template problems like VERTEX-COVER and SUBSET-SUM?▼

Yes, you can verify reductions from classic template problems including VERTEX-COVER, SUBSET-SUM, CIRCUIT-SAT, and HAM-CYCLE by checking encoding size arguments, reduction composition, and certificate-based NP-membership.

How do I prove a problem is in P, NP, NP-hard, or NP-complete?▼

Classify a problem as in P, NP, NP-hard, or NP-complete by verifying certificate-based NP-membership and constructing polynomial-time reductions from canonical NP-complete problems to establish NP-hardness within theoretical computer science contexts.

What are the limitations when auditing NP-hardness proofs for custom decision problems?▼

Limitations include the necessity to strictly enforce definitions of decision languages, verify encoding size, ensure both forward and reverse reduction directions, and maintain polynomial construction bounds for the target problem.