Learn R Programming

cayleyR (version 0.1.0)

cayleyR-package: cayleyR: Cayley Graph Analysis for Permutation Puzzles

Description

Implements algorithms for analyzing Cayley graphs of permutation groups, with a focus on the TopSpin puzzle and similar combinatorial problems. Provides methods for cycle detection, state space exploration, and finding optimal operation sequences in permutation groups generated by shift and reverse operations.

Arguments

Getting Started

library(cayleyR)

# Basic operations shift_left(1:5) reverse_prefix(1:10, k = 4)

# Cycle analysis for TopSpin 20-4 result <- get_reachable_states( start_state = 1:20, allowed_positions = c("L", "X"), k = 4 )

Author

Yuri Baramykov lbsbmsu@mail.ru

Details

Main Features

  • Basic permutation operations: cyclic left/right shifts, prefix reversal

  • Cycle analysis: find cycles in Cayley graphs with detailed state information

  • Sequence optimization: search for operation sequences with maximum cycle length

  • Fast processing: lightweight version for batch testing of combinations

Main Functions

Basic Operations:

  • shift_left - Cyclic left shift

  • shift_right - Cyclic right shift

  • reverse_prefix - Reverse first k elements (turnstile operation)

Analysis Tools:

  • apply_operations - Apply sequence of operations

  • get_reachable_states - Full cycle analysis with state tracking

  • get_reachable_states_light - Lightweight cycle detection

Optimization:

  • find_best_random_combinations - Find best random sequences

After installation from GitHub, visit: https://github.com/Zabis13/cayleyR

References

See Also