Skip to main content
GitHub-Repository

Symbolon

Symbolon enthält 225 gesammelte Skills von cirrus-uchicago, mit Repository-Berufsabdeckung und Skill-Detailseiten auf SkillsMP.

gesammelte Skills
225
Stars
8
aktualisiert
2026-06-18
Forks
0
Berufsabdeckung
1 Berufskategorien · 100% klassifiziert
Repository-Explorer

Skills in diesem Repository

add-newline-to-output
Softwareentwickler

Use when printf statements output strings without trailing newlines

2026-06-18
adjust-array-indexing-base
Softwareentwickler

Use when array is accessed with direct user input as index (0-based indexing)

2026-06-18
align-array-indexing-with-input
Softwareentwickler

Use when the program accesses a precomputed table using an offset (e.g., arr[n-1]) that introduces an arithmetic operation between the symbolic input and the index

2026-06-18
arithmetic-over-char-iteration
Softwareentwickler

Use when loop variables iterate over character values (e.g., ASCII codes) to represent different operations or choices

2026-06-18
array-lookup-to-explicit-branches
Softwareentwickler

Use when code uses a loop to search for an input value in an array and then uses the found index for further computation

2026-06-18
array-to-scalar-chars
Softwareentwickler

Use when code reads a fixed number of characters into an array and only accesses individual elements

2026-06-18
array-to-scalar-simplification
Softwareentwickler

Use when code uses an array to store a single character/value that is only accessed at one index

2026-06-18
array-to-scalar-vars
Softwareentwickler

Use when code reads fixed-size input into an array and only accesses individual elements

2026-06-18
avoid-arithmetic-comparisons
Softwareentwickler

Use when code uses arithmetic operations (like subtraction) to check character ranges or ASCII values

2026-06-18
avoid-arithmetic-constraints
Softwareentwickler

Use when code performs arithmetic operations on symbolic input values

2026-06-18
avoid-array-indexing-arithmetic
Softwareentwickler

Use when input is read into an array and then accessed with arithmetic operations to form values

2026-06-18
avoid-branch-driven-counter-resets
Softwareentwickler

Use when code uses a conditional branch to reset/clamp a counter (e.g., `if(cnt < 0){ fill++; cnt = 0; }`) that introduces an extra control-flow path on every loop iteration

2026-06-18
avoid-complex-modulo-conditions
Softwareentwickler

Use when code uses complex arithmetic expressions with modulo operations in conditional statements, especially involving multiple variables

2026-06-18
avoid-deep-recursive-accumulation
Softwareentwickler

Use when the solution computes a result via deep tail-style recursion that mixes arithmetic accumulation with the base case (e.g., recursing through y/x*x*2 + f(y%x,x) until x==0)

2026-06-18
avoid-early-return-in-loops
Softwareentwickler

Use when code uses early return statements inside nested loops to exit upon finding a condition

2026-06-18
avoid-explicit-branching
Softwareentwickler

Use when code uses explicit if-else statements to handle different input cases

2026-06-18
avoid-explicit-conditionals
Softwareentwickler

Use when code uses explicit if-else branches based on input comparisons

2026-06-18
avoid-exponential-computation
Softwareentwickler

Use when code computes large values through repeated multiplication in loops (e.g., computing powers)

2026-06-18
avoid-float-arithmetic-in-integer-loops
Softwareentwickler

Use when integer values are updated using floating-point multiplication (e.g., y = y * 1.01) inside a loop condition that KLEE must symbolically reason about

2026-06-18
avoid-integer-constraints
Softwareentwickler

Use when code reads an integer with scanf and performs arithmetic/logical operations on it

2026-06-18
avoid-intermediate-variables
Softwareentwickler

Use when intermediate variables are used to store simple arithmetic expressions before using them in conditional statements

2026-06-18
avoid-iterative-gcd-with-mutated-params
Softwareentwickler

Use when GCD/LCM is computed via an iterative loop that mutates the input parameters and reuses them as both state and divisor, creating loop-carried symbolic dependencies

2026-06-18
avoid-large-fixed-arrays
Softwareentwickler

Use when code uses large fixed-size arrays (e.g., box[55555]) for sieve-based algorithms or marking/filtering operations

2026-06-18
avoid-large-static-arrays
Softwareentwickler

Use when code declares large static/global arrays that are accessed with symbolic indices

2026-06-18
avoid-loop-based-search
Softwareentwickler

Use when code uses a loop to search for a value that satisfies an equation or constraint

2026-06-18
avoid-loop-based-sqrt
Softwareentwickler

Use when computing square root through iterative loop (while i*i < target)

2026-06-18
avoid-loop-dependent-multiplication
Softwareentwickler

Use when a loop performs repeated multiplication where the loop bound depends on symbolic input

2026-06-18
avoid-modulo-in-constraints
Softwareentwickler

Use when code uses modulo operations (%) in conditional expressions that involve symbolic variables

2026-06-18
avoid-modulo-operations
Softwareentwickler

Use when code uses modulo operator (%) to extract digits or parts of a number

2026-06-18
avoid-multiplicative-constraints-in-branches
Softwareentwickler

Use when a branch condition uses multiplication of two symbolic inputs (e.g., s*t < d) creating a nonlinear constraint

2026-06-18
avoid-nonlinear-symbolic-constraints
Softwareentwickler

Use when the condition involves nonlinear arithmetic over symbolic integers (e.g., multiplications like 4*a*b or squaring (c-a-b)*(c-a-b)) that the SMT solver struggles to reason about

2026-06-18
avoid-puts-use-printf
Softwareentwickler

Use when using puts() function for string output

2026-06-18
avoid-recursive-modular-exponentiation-for-inverses
Softwareentwickler

Use when the code computes modular inverses via Fermat's little theorem using a power function with a data-dependent loop (pw(x, mod-2)) called repeatedly inside combinatorial helpers

2026-06-18
avoid-redundant-bounds-sentinels
Softwareentwickler

Use when the algorithm pads a 2D array with sentinel border values and uses nested initialization loops with per-cell conditionals to set them, creating extra symbolic branches per cell

2026-06-18
avoid-redundant-intermediate-assignments
Softwareentwickler

Use when code introduces an extra variable mutation (e.g., K-=1) before using the value as an array index, creating additional symbolic state updates

2026-06-18
avoid-reusing-input-variables
Softwareentwickler

Use when input variables are modified and reused for computation instead of using separate variables

2026-06-18
avoid-scanf-for-char-input
Softwareentwickler

Use when using scanf() to read a single character into an integer variable

2026-06-18
avoid-side-effects-in-for-update
Softwareentwickler

Use when a for-loop's update expression uses the comma operator to embed I/O or computation with side effects (e.g., printf with a conditional argument), mixing loop control with branching logic

2026-06-18
avoid-side-effects-in-loop-headers
Softwareentwickler

Use when loop counters are initialized outside the loop and side-effecting expressions (like printf with branching arguments) are embedded in the for-statement's increment clause

2026-06-18
avoid-special-case-early-returns
Softwareentwickler

Use when the code branches on equality of input parameters and returns early via specialized closed-form computations (e.g., Pow) for degenerate cases

2026-06-18
Zeigt die Top 40 von 225 gesammelten Skills in diesem Repository.