2025-11-11T09:28:09.612362

Depth-13 Sorting Networks for 28 Channels

Wang
We establish new depth upper bounds for sorting networks on 27 and 28 channels, improving the previous best bound of 14 to 13. Our 28-channel network is constructed with reflectional symmetry by combining high-quality prefixes of 16- and 12-channel networks, extending them greedily one comparator at a time, and using a SAT solver to complete the remaining layers.
academic

28๊ฐœ ์ฑ„๋„์„ ์œ„ํ•œ ๊นŠ์ด-13 ์ •๋ ฌ ๋„คํŠธ์›Œํฌ

๊ธฐ๋ณธ ์ •๋ณด

  • ๋…ผ๋ฌธ ID: 2511.04107
  • ์ œ๋ชฉ: Depth-13 Sorting Networks for 28 Channels
  • ์ €์ž: Chengu Wang (wangchengu@gmail.com)
  • ๋ถ„๋ฅ˜: cs.DS (๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ๋ฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜), cs.DM (์ด์‚ฐ ์ˆ˜ํ•™)
  • ๋ฐœํ‘œ ์‹œ๊ฐ„: 2025๋…„ 11์›” 6์ผ (arXiv ์‚ฌ์ „์ธ์‡„๋ณธ)
  • ๋…ผ๋ฌธ ๋งํฌ: https://arxiv.org/abs/2511.04107

์ดˆ๋ก

๋ณธ ๋…ผ๋ฌธ์€ 27๊ฐœ ๋ฐ 28๊ฐœ ์ฑ„๋„ ์ •๋ ฌ ๋„คํŠธ์›Œํฌ์˜ ์ƒˆ๋กœ์šด ๊นŠ์ด ์ƒํ•œ์„ ํ™•๋ฆฝํ•˜์—ฌ, ๊ธฐ์กด์˜ ์ตœ์  ์ƒํ•œ์„ 14์ธต์—์„œ 13์ธต์œผ๋กœ ๊ฐœ์„ ํ•˜์˜€๋‹ค. 28๊ฐœ ์ฑ„๋„ ๋„คํŠธ์›Œํฌ๋Š” ๋ฐ˜์‚ฌ ๋Œ€์นญ์„ฑ์„ ํ†ตํ•ด ๊ตฌ์„ฑ๋˜๋ฉฐ, 16๊ฐœ ์ฑ„๋„ ๋ฐ 12๊ฐœ ์ฑ„๋„ ๋„คํŠธ์›Œํฌ์˜ ๊ณ ํ’ˆ์งˆ ์ ‘๋‘์‚ฌ๋ฅผ ๊ฒฐํ•ฉํ•˜๊ณ , ๋น„๊ต๊ธฐ๋ณ„ ํƒ์š•์  ํ™•์žฅ์„ ์ˆ˜ํ–‰ํ•œ ํ›„ SAT ํ•ด๊ฒฐ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜๋จธ์ง€ ์ธต์„ ์™„์„ฑํ•œ๋‹ค.

์—ฐ๊ตฌ ๋ฐฐ๊ฒฝ ๋ฐ ๋™๊ธฐ

๋ฌธ์ œ ์ •์˜

๋ณธ ์—ฐ๊ตฌ๊ฐ€ ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ•˜๋Š” ํ•ต์‹ฌ ๋ฌธ์ œ๋Š” ํŠน์ • ์ฑ„๋„ ์ˆ˜(27๊ฐœ ๋ฐ 28๊ฐœ)์— ๋Œ€ํ•œ ์ตœ์  ๊นŠ์ด ์ •๋ ฌ ๋„คํŠธ์›Œํฌ๋ฅผ ์ฐพ๋Š” ๊ฒƒ์ด๋‹ค. ์ •๋ ฌ ๋„คํŠธ์›Œํฌ๋Š” ๋น„๊ต๊ธฐ ๋„คํŠธ์›Œํฌ๋กœ์„œ ์ž…๋ ฅ ์ˆ˜์—ด์„ ๋น„๊ฐ์†Œ ์ˆœ์„œ๋กœ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊นŠ์ด๋Š” ์ž…๋ ฅ์—์„œ ์ถœ๋ ฅ๊นŒ์ง€์˜ ๊ฒฝ๋กœ์ƒ ๋น„๊ต๊ธฐ์˜ ์ตœ๋Œ€ ๊ฐœ์ˆ˜๋กœ ์ •์˜๋œ๋‹ค.

์—ฐ๊ตฌ์˜ ์ค‘์š”์„ฑ

  1. ์‹ค์ œ ์‘์šฉ ๊ฐ€์น˜: ์ •๋ ฌ ๋„คํŠธ์›Œํฌ๋Š” GPU ์ •๋ ฌ, FPGA ์‹œ์Šคํ…œ ๋ฐ ์•”ํ˜ธํ•™ ํ”„๋กœํ† ์ฝœ์˜ ํ•˜๋“œ์›จ์–ด ๊ตฌํ˜„์—์„œ ์ค‘์š”ํ•œ ์‘์šฉ์„ ๊ฐ€์ง„๋‹ค
  2. ์ด๋ก ์  ์˜์˜: ์†Œํ”„ํŠธ์›จ์–ด ์ •๋ ฌ ๋„คํŠธ์›Œํฌ๋Š” ์•ˆ์ „ํ•œ ๊ณ„์‚ฐ ๋ฐ ์ฐจ๋“ฑ ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ์‹œ์Šคํ…œ์—์„œ ๋ฌด๊ด€ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ตฌ์„ฑ ์š”์†Œ์ด๋‹ค
  3. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ตœ์ ํ™”: AKS ๋„คํŠธ์›Œํฌ๊ฐ€ ์ ๊ทผ์ ์œผ๋กœ O(log n) ๊นŠ์ด๋ฅผ ๋‹ฌ์„ฑํ•˜์ง€๋งŒ, ๋‚ด์žฌ๋œ ํฐ ์ƒ์ˆ˜๋กœ ์ธํ•ด ์‹ค์ œ ์‘์šฉ์—์„œ๋Š” ๋น„์‹ค์šฉ์ ์ด๋‹ค

๊ธฐ์กด ๋ฐฉ๋ฒ•์˜ ํ•œ๊ณ„

  • Batcher์˜ ํ™€์ง ๋ณ‘ํ•ฉ ์ •๋ ฌ ๋ฐ ๋น„ํ† ๋‹‰ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ O((log n)ยฒ) ๊นŠ์ด๋ฅผ ๊ฐ€์ง€๋ฉฐ ์ถฉ๋ถ„ํžˆ ์ตœ์ ํ™”๋˜์ง€ ์•Š์Œ
  • AKS ๋„คํŠธ์›Œํฌ๋Š” ์ ๊ทผ์ ์œผ๋กœ ์ตœ์ ์ด์ง€๋งŒ ์ƒ์ˆ˜ ์ธ์ž๊ฐ€ ๋„ˆ๋ฌด ์ปค์„œ ์‹ค์šฉ์„ฑ์ด ๋–จ์–ด์ง
  • ์ค‘๊ฐ„ ๊ทœ๋ชจ n ๊ฐ’(์˜ˆ: 27, 28)์˜ ๊ฒฝ์šฐ ๊ธฐ์กด ์ตœ์  ์ƒํ•œ์€ 14์ธต์ด๋ฉฐ ๊ฐœ์„  ์—ฌ์ง€๊ฐ€ ์žˆ์Œ

ํ•ต์‹ฌ ๊ธฐ์—ฌ

  1. ํš๊ธฐ์  ๊ฐœ์„ : 27๊ฐœ ๋ฐ 28๊ฐœ ์ฑ„๋„ ์ •๋ ฌ ๋„คํŠธ์›Œํฌ์˜ ๊นŠ์ด ์ƒํ•œ์„ 14์ธต์—์„œ 13์ธต์œผ๋กœ ๊ฐœ์„ 
  2. ๊ตฌ์„ฑ ๋ฐฉ๋ฒ• ํ˜์‹ : ๋ฐ˜์‚ฌ ๋Œ€์นญ์„ฑ ๊ธฐ๋ฐ˜ ๋ถ„ํ•  ์ •๋ณต ๊ตฌ์„ฑ ์ „๋žต์„ ์ œ์•ˆํ•˜๋ฉฐ, 16+12 ์ฑ„๋„ ๋ถ„ํ•ด์™€ ๊ฒฐํ•ฉ
  3. ํƒ์ƒ‰ ๊ณต๊ฐ„ ์ตœ์ ํ™”: ํƒ์ƒ‰ ๊ณต๊ฐ„์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ๋‘ ๊ฐ€์ง€ ์ƒˆ๋กœ์šด ๊ธฐ๋ฒ• ๊ฐœ๋ฐœ: ๋ฐ˜์‚ฌ ๋Œ€์นญ์„ฑ ์ œ์•ฝ ๋ฐ ํƒ์š•์  ๋‹จ์ผ ๋น„๊ต๊ธฐ ํ™•์žฅ
  4. ํšจ์œจ์  ๊ตฌํ˜„: ์ „์ฒด ๊ณ„์‚ฐ ๊ณผ์ •์ด Mac mini M2์—์„œ 20๋ถ„ ์ด๋‚ด์— ์™„๋ฃŒ๋˜๋ฉฐ ์˜คํ”ˆ์†Œ์Šค ์ฝ”๋“œ ์ œ๊ณต

๋ฐฉ๋ฒ• ์ƒ์„ธ ์„ค๋ช…

์ž‘์—… ์ •์˜

์ž…๋ ฅ: n๊ฐœ ์ฑ„๋„์˜ ์ž„์˜์˜ ๋น„๊ต ๊ฐ€๋Šฅํ•œ ๊ฐ’ ์ˆ˜์—ด ์ถœ๋ ฅ: ๋น„๊ฐ์†Œ ์ˆœ์„œ๋กœ ์ •๋ ฌ๋œ ์ˆ˜์—ด ์ œ์•ฝ: ๋„คํŠธ์›Œํฌ ๊นŠ์ด ์ตœ์†Œํ™”(์ž…๋ ฅ์—์„œ ์ถœ๋ ฅ๊นŒ์ง€์˜ ์ตœ๋Œ€ ๋น„๊ต๊ธฐ ์ˆ˜)

ํ•ต์‹ฌ ์ด๋ก ์  ๊ธฐ์ดˆ

์˜-์ผ ์›๋ฆฌ(Zero-One Principle)

๋น„๊ต ๋„คํŠธ์›Œํฌ๊ฐ€ ๋ชจ๋“  2^n๊ฐœ์˜ ๋ถ€์šธ ์ˆ˜์—ด์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด, ์ž„์˜์˜ ๋น„๊ต ๊ฐ€๋Šฅํ•œ ๊ฐ’์˜ ๋ชจ๋“  ์ˆ˜์—ด์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋Š” ๊ฒ€์ฆ ๊ณผ์ •์„ ํฌ๊ฒŒ ๋‹จ์ˆœํ™”ํ•œ๋‹ค.

์ค‘๋ณต ์ ‘๋‘์‚ฌ ์ œ๊ฑฐ

๋‹ค์Œ ๋ณด์กฐ์ •๋ฆฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํƒ์ƒ‰ ๊ณต๊ฐ„ ๊ฐ€์ง€์น˜๊ธฐ๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค:

  • ๋ณด์กฐ์ •๋ฆฌ 2: output(P') โІ output(P)์ด๊ณ  P#S๊ฐ€ ์ •๋ ฌ ๋„คํŠธ์›Œํฌ์ด๋ฉด, P'#S๋„ ์ •๋ ฌ ๋„คํŠธ์›Œํฌ์ด๋‹ค
  • ๋ณด์กฐ์ •๋ฆฌ 3: ์ˆœ์—ด ๋Œ€์นญ์„ฑ์„ ํ†ตํ•ด ๋ณด์กฐ์ •๋ฆฌ 2๋ฅผ ํ™•์žฅ
  • ์ถ”๋ก  1: ์ˆœ์—ด ๋ฐ ๋ถ€์ • ์—ฐ์‚ฐ์„ ๊ฒฐํ•ฉํ•œ ์™„์ „ํ•œ ์ค‘๋ณต ์ œ๊ฑฐ ์กฐ๊ฑด

๊ตฌ์„ฑ ์ „๋žต

3๋‹จ๊ณ„ ๊ตฌ์„ฑ ๋ฐฉ๋ฒ•

  1. ์ ‘๋‘์‚ฌ ๊ฒฐํ•ฉ ๋‹จ๊ณ„: ๊ณ ํ’ˆ์งˆ์˜ 16๊ฐœ ์ฑ„๋„ 5์ธต ์ ‘๋‘์‚ฌ์™€ 12๊ฐœ ์ฑ„๋„ 5์ธต ์ ‘๋‘์‚ฌ ๊ฒฐํ•ฉ
  2. ํƒ์š•์  ํ™•์žฅ ๋‹จ๊ณ„: 6์ธต๊นŒ์ง€ ๋น„๊ต๊ธฐ๋ณ„๋กœ ํ™•์žฅํ•˜๋ฉฐ ์ตœ์  ํ›„๋ณด ์ง‘ํ•ฉ ์œ ์ง€
  3. SAT ํ•ด๊ฒฐ ๋‹จ๊ณ„: SAT ํ•ด๊ฒฐ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ 7-13์ธต ์™„์„ฑ

๋ฐ˜์‚ฌ ๋Œ€์นญ์„ฑ ํ™œ์šฉ

  • ํƒ์ƒ‰ ๊ณต๊ฐ„์„ ๋ฐ˜์‚ฌ ๋Œ€์นญ ๋„คํŠธ์›Œํฌ๋กœ ์ œํ•œ
  • ์ค‘์‹ฌํ™” ๊ตฐ C(ฯn)์˜ ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•œ ๋Œ€์นญ์„ฑ ๊ฐ€์ง€์น˜๊ธฐ
  • ๋ฐ˜์‚ฌ ๋Œ€์นญ ์ˆœ์—ด์€ wreath product Cโ‚‚ โ‰€ S_{n/2}๋ฅผ ํ˜•์„ฑ

๊ธฐ์ˆ  ํ˜์‹  ํฌ์ธํŠธ

1. 16+12 ๋ถ„ํ•ด ์ „๋žต

16+12๋ฅผ 14+14 ๋Œ€์‹  ์„ ํƒํ•œ ์ด์œ :

  • 2์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ ์ฑ„๋„ ์ˆ˜๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋” ํšจ์œจ์ 
  • ๋‘ ๋ถ€๋ถ„์˜ ํฌ๊ธฐ๊ฐ€ ๋น„์Šทํ•  ๋•Œ ๋ณ‘ํ•ฉ์ด ๊ฐ€์žฅ ํšจ๊ณผ์ 
  • 16๊ฐœ ์ฑ„๋„์€ ์šฐ์ˆ˜ํ•œ Van Voorhis ์ ‘๋‘์‚ฌ๋ฅผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

2. ํƒ์š•์  ๋‹จ์ผ ๋น„๊ต๊ธฐ ํ™•์žฅ

๊ธฐ์กด ๋ฐฉ๋ฒ•์€ ๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ๋Œ€์นญ ์ธต์„ ์—ด๊ฑฐํ•˜์—ฌ ๊ณ„์‚ฐ ๋น„์šฉ์ด ๋ง‰๋Œ€ํ•˜๋‹ค. ๋ณธ ๋…ผ๋ฌธ์€ ํ˜์‹ ์ ์œผ๋กœ:

  • ๋น„๊ต๊ธฐ ๋ฐ ๊ทธ ๋ฐ˜์‚ฌ์Œ์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ถ”๊ฐ€
  • ๊ฐ ๋‹จ๊ณ„์—์„œ ์ตœ์ƒ์˜ 64๊ฐœ ํ›„๋ณด ์œ ์ง€(์ถœ๋ ฅ ์ง‘ํ•ฉ ํฌ๊ธฐ๋กœ ์ •๋ ฌ)
  • ๊ณ„์‚ฐ ๋ณต์žก๋„๋ฅผ ํฌ๊ฒŒ ๊ฐ์†Œ

3. ํšจ์œจ์  ์ค‘๋ณต ๊ฒ€์ถœ

๋‘ ๊ฐ€์ง€ ํœด๋ฆฌ์Šคํ‹ฑ ๋ฐฉ๋ฒ• ๊ฐœ๋ฐœ:

  • ์–‘์„ฑ ๊ฒ€์ถœ: ์ž„์˜ ์ˆœ์—ด ํ–‰, ์—ด ํฌํ•จ ๊ด€๊ณ„ ๊ฒ€์‚ฌ
  • ์Œ์„ฑ ํ•„ํ„ฐ๋ง: ํ–‰๊ณผ ์—ด์˜ ํ•ฉ ์ˆ˜์—ด ๋น„๊ต

์‹คํ—˜ ์„ค์ •

๊ณ„์‚ฐ ํ™˜๊ฒฝ

  • ํ•˜๋“œ์›จ์–ด: Mac mini M2, 16GB RAM
  • SAT ํ•ด๊ฒฐ๊ธฐ: MiniSat
  • ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด: ๋ช…์‹œ๋˜์ง€ ์•Š์Œ
  • ์ด ๊ณ„์‚ฐ ์‹œ๊ฐ„: 20๋ถ„ ์ด๋‚ด

์ ‘๋‘์‚ฌ ์ƒ์„ฑ

12๊ฐœ ์ฑ„๋„ ์ ‘๋‘์‚ฌ

  • ๋ชจ๋“  ๋น„์ค‘๋ณต ๋ฐ˜์‚ฌ ๋Œ€์นญ 5์ธต ์ ‘๋‘์‚ฌ๋ฅผ ์ธต๋ณ„๋กœ ํ™•์žฅํ•˜์—ฌ ์ƒ์„ฑ
  • ๊ฐ ์ธต์˜ ์ ‘๋‘์‚ฌ ๊ฐœ์ˆ˜: 1 โ†’ 4 โ†’ 41 โ†’ 1502 โ†’ 11753 โ†’ 2164
  • ์ถœ๋ ฅ ์ง‘ํ•ฉ ํฌ๊ธฐ๊ฐ€ ๊ฐ€์žฅ ์ž‘์€ 4๊ฐœ ์ ‘๋‘์‚ฌ ์„ ํƒ(ํฌ๊ธฐ: 34, 34, 35, 35)

16๊ฐœ ์ฑ„๋„ ์ ‘๋‘์‚ฌ

  • Van Voorhis ์ •๋ ฌ ๋„คํŠธ์›Œํฌ์˜ ์ฒ˜์Œ 5์ธต ์‚ฌ์šฉ
  • 4์ฐจ์› ์ดˆ์ž…๋ฐฉ์ฒด ๊ตฌ์กฐ ๊ตฌ์„ฑ
  • 5์ธต์—์„œ ํ•ด๋ฐ ๊ฐ€์ค‘์น˜์— ๋”ฐ๋ผ ๋Œ€์นญ ๋น„๊ต ์Œ ๋Œ€์‘

SAT ํ•ด๊ฒฐ ๊ตฌ์„ฑ

  • CCFE+19์˜ ์ตœ์ ํ™” ๊ธฐ๋ฒ• ์ฑ„ํƒ
  • oneUp ๋ฐ oneDown ์ธ์ฝ”๋”ฉ ๊ธฐ๋ฒ•
  • ๋งˆ์ง€๋ง‰ ๋‘ ์ธต ์ œ์•ฝ
  • ์œˆ๋„์šฐ ํฌ๊ธฐ ์ตœ์†Œํ™”๋ฅผ ์œ„ํ•œ ์ฑ„๋„ ์ˆœ์—ด
  • 8๊ฐœ SAT ์ธ์Šคํ„ด์Šค ๋ณ‘๋ ฌ ํ•ด๊ฒฐ

์‹คํ—˜ ๊ฒฐ๊ณผ

์ฃผ์š” ๊ฒฐ๊ณผ

28๊ฐœ ์ฑ„๋„ 13์ธต ๋ฐ˜์‚ฌ ๋Œ€์นญ ์ •๋ ฌ ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ์— ์„ฑ๊ณตํ–ˆ์œผ๋ฉฐ, ๊ตฌ์ฒด์ ์ธ ๋„คํŠธ์›Œํฌ ๊ตฌ์กฐ๋Š” 13์ธต์„ ํฌํ•จํ•˜๊ณ  ๊ฐ ์ธต์˜ ๋น„๊ต๊ธฐ ๊ตฌ์„ฑ์ด ๋…ผ๋ฌธ์— ์™„์ „ํžˆ ๋‚˜์—ด๋˜์–ด ์žˆ๋‹ค.

์„ฑ๋Šฅ ๋ถ„์„

  • ๊ณ„์‚ฐ ์‹œ๊ฐ„ ๋ถ„ํ•ด:
    • 12๊ฐœ ์ฑ„๋„ 5์ธต ์ ‘๋‘์‚ฌ ํƒ์ƒ‰: 12๋ถ„
    • 16๊ฐœ ์ฑ„๋„ 5์ธต ์ ‘๋‘์‚ฌ ํƒ์ƒ‰: 1๋ถ„
    • SAT ํ•ด๊ฒฐ(8๊ฐœ ์ธ์Šคํ„ด์Šค ๋ณ‘๋ ฌ): 0.5-5๋ถ„
    • ๊ธฐํƒ€ ๋‹จ๊ณ„: ๊ฑฐ์˜ ์ฆ‰์‹œ ์™„๋ฃŒ

๊ฒ€์ฆ ๊ฒฐ๊ณผ

  • ๋ชจ๋“  8๊ฐœ ์ตœ์  ์ ‘๋‘์‚ฌ๊ฐ€ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ํ•ด๋ฅผ ์ฐพ์Œ
  • ๋ฏธ์‚ฌ์šฉ ๋น„๊ต๊ธฐ ์ œ๊ฑฐ ํ›„ ์ตœ์ข… ๋„คํŠธ์›Œํฌ ํš๋“
  • ์ž…๋ ฅ ์ฑ„๋„ ์ˆœ์—ด์„ ํ†ตํ•ด ํ‘œํ˜„์„ ์ถ”๊ฐ€ ์ตœ์ ํ™”

์ถ”๋ก  ๊ฒฐ๊ณผ

์ถ”๋ก  3: 27๊ฐœ ์ฑ„๋„๋„ 13์ธต ์ •๋ ฌ ๋„คํŠธ์›Œํฌ๊ฐ€ ์กด์žฌํ•œ๋‹ค(28๊ฐœ ์ฑ„๋„ ๋„คํŠธ์›Œํฌ์—์„œ ๊ฐ„๋‹จํžˆ ๋„์ถœ)

๊ด€๋ จ ์—ฐ๊ตฌ

์—ญ์‚ฌ์  ๋ฐœ์ „

  1. ๊ณ ์ „ ์•Œ๊ณ ๋ฆฌ์ฆ˜: Batcher์˜ ํ™€์ง ๋ณ‘ํ•ฉ ์ •๋ ฌ ๋ฐ ๋น„ํ† ๋‹‰ ์ •๋ ฌ(๊นŠ์ด O((log n)ยฒ))
  2. ์ด๋ก ์  ๋ŒํŒŒ: AKS ๋„คํŠธ์›Œํฌ๋กœ O(log n) ๊นŠ์ด ๋ฐ O(n log n) ํฌ๊ธฐ ๋‹ฌ์„ฑ
  3. ์†Œ๊ทœ๋ชจ ์ตœ์ ํ™”: ํŠน์ • n ๊ฐ’์— ๋Œ€ํ•œ ์ •ํ™•ํ•œ ๊ตฌ์„ฑ ์—ฐ๊ตฌ

๊ธฐ์กด ๊ธฐ์ˆ 

  • SorterHunter: ๋ฐ˜์‚ฌ ๋Œ€์นญ์„ฑ์„ ํ™œ์šฉํ•œ ํƒ์ƒ‰ ๋„๊ตฌ
  • SAT ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•: Codish ๋“ฑ์˜ ์ธ์ฝ”๋”ฉ ๊ธฐ๋ฒ•
  • ์ ‘๋‘์‚ฌ ํƒ์ƒ‰: Bundala ๋ฐ Zรกvodnแปณ์˜ ๊ฐ€์ง€์น˜๊ธฐ ์ „๋žต

์ง์ ‘ ๊ด€๋ จ ์—ฐ๊ตฌ

Ehlers Ehl17๋Š” 24๊ฐœ ์ฑ„๋„ ๋„คํŠธ์›Œํฌ๋ฅผ 12์ธต์œผ๋กœ ๊ฐœ์„ ํ–ˆ์œผ๋ฉฐ, ์œ ์‚ฌํ•œ ์ ‘๋‘์‚ฌ ๊ฒฐํ•ฉ ๋ฐ SAT ํ•ด๊ฒฐ ์ „๋žต์„ ์‚ฌ์šฉํ–ˆ๋‹ค. ๋ณธ ๋…ผ๋ฌธ์€ ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋” ํฐ ๊ทœ๋ชจ๋กœ ํ™•์žฅํ•œ๋‹ค.

๊ฒฐ๋ก  ๋ฐ ๋…ผ์˜

์ฃผ์š” ๊ฒฐ๋ก 

  1. 27๊ฐœ ๋ฐ 28๊ฐœ ์ฑ„๋„ ์ •๋ ฌ ๋„คํŠธ์›Œํฌ์˜ ๊นŠ์ด ์ƒํ•œ์„ 14์—์„œ 13์œผ๋กœ ๊ฐœ์„  ์„ฑ๊ณต
  2. ๋ฐ˜์‚ฌ ๋Œ€์นญ์„ฑ ์ œ์•ฝ ๋ฐ ํƒ์š•์  ํ™•์žฅ์˜ ํšจ๊ณผ์„ฑ ์ž…์ฆ
  3. ํ•ฉ๋ฆฌ์ ์ธ ๊ณ„์‚ฐ ์‹œ๊ฐ„์˜ ํšจ์œจ์  ๊ตฌํ˜„ ์ œ๊ณต

ํ•œ๊ณ„

  1. ๋ฐฉ๋ฒ• ํ•œ๊ณ„: 18๊ฐœ ์ฑ„๋„ ๋„คํŠธ์›Œํฌ์— ๋Œ€ํ•ด์„œ๋Š” ๊ฐœ์„  ๋‹ฌ์„ฑ ์‹คํŒจ
  2. ํƒ์ƒ‰ ์ „๋žต: ํƒ์š•์  ํ™•์žฅ์ด ์ „์—ญ ์ตœ์ ํ•ด๋ฅผ ๋†“์น  ์ˆ˜ ์žˆ์Œ
  3. ๊ทœ๋ชจ ์ œํ•œ: ๋” ํฐ ๊ทœ๋ชจ ๋„คํŠธ์›Œํฌ์— ๋Œ€ํ•œ ๋ฐฉ๋ฒ•์˜ ์ ์šฉ ๊ฐ€๋Šฅ์„ฑ ๋ฏธ์ง€์ˆ˜

ํ–ฅํ›„ ๋ฐฉํ–ฅ

  1. ๊ธฐ๊ณ„ํ•™์Šต ํ†ตํ•ฉ: ๊ฐ•ํ™”ํ•™์Šต์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€์žฅ ์œ ๋งํ•œ ์ ‘๋‘์‚ฌ ์˜ˆ์ธก
  2. ๋ชฉ์  ํ•จ์ˆ˜ ์ตœ์ ํ™”: ์ตœ์†Œ ์ถœ๋ ฅ ์ง‘ํ•ฉ๋ณด๋‹ค ๋‚˜์€ ํƒ์š•์  ํ™•์žฅ ๋ชฉํ‘œ ํƒ์ƒ‰
  3. ๋” ํฐ ๊ทœ๋ชจ: 29-32๊ฐœ ์ฑ„๋„ ๋„คํŠธ์›Œํฌ๋กœ ๋ฐฉ๋ฒ• ํ™•์žฅ

์‹ฌ์ธต ํ‰๊ฐ€

์žฅ์ 

  1. ์‹ค์ œ ๊ธฐ์—ฌ ํ˜„์ €ํ•จ: ์ค‘์š”ํ•œ ์‹ค์ œ ๋ฌธ์ œ์—์„œ ํš๊ธฐ์  ์ง„์ „ ๋‹ฌ์„ฑ
  2. ๋ฐฉ๋ฒ• ํ˜์‹ ์„ฑ ๊ฐ•ํ•จ: ํƒ์š•์  ๋‹จ์ผ ๋น„๊ต๊ธฐ ํ™•์žฅ์€ ์ƒˆ๋กญ๊ณ  ํšจ๊ณผ์ ์ธ ๊ธฐ๋ฒ•
  3. ๊ตฌํ˜„ ํšจ์œจ์„ฑ: ๋ณต์žกํ•œ ํƒ์ƒ‰์„ 20๋ถ„ ๋‚ด์— ์™„๋ฃŒํ•˜์—ฌ ์‹ค์šฉ์„ฑ ์šฐ์ˆ˜
  4. ์ด๋ก ์  ๊ธฐ์ดˆ ๊ฒฌ๊ณ ํ•จ: ์„ฑ์ˆ™ํ•œ ๋Œ€์นญ์„ฑ ์ด๋ก  ๋ฐ SAT ํ•ด๊ฒฐ ๊ธฐ๋ฒ• ๊ธฐ๋ฐ˜
  5. ์žฌํ˜„์„ฑ ์šฐ์ˆ˜ํ•จ: ์™„์ „ํ•œ ์˜คํ”ˆ์†Œ์Šค ๊ตฌํ˜„ ์ œ๊ณต

๋ถ€์กฑํ•œ ์ 

  1. ์ด๋ก ์  ๋ถ„์„ ๋ถ€์กฑ: ๋ฐฉ๋ฒ•์˜ ๋ณต์žก๋„ ๋ฐ ์ˆ˜๋ ด์„ฑ์— ๋Œ€ํ•œ ์ด๋ก ์  ๋ถ„์„ ๋ถ€์žฌ
  2. ์‹คํ—˜ ๋ฒ”์œ„ ์ œํ•œ: 27๊ฐœ ๋ฐ 28๊ฐœ ์ฑ„๋„๋งŒ ๋Œ€์ƒ์œผ๋กœ ์ผ๋ฐ˜ํ™” ๋Šฅ๋ ฅ ๋ฏธํก
  3. ๋น„๊ต ๋ถˆ์ถฉ๋ถ„: ๋‹ค๋ฅธ ํœด๋ฆฌ์Šคํ‹ฑ ๋ฐฉ๋ฒ•๊ณผ์˜ ๋น„๊ต ๋ถ€์กฑ
  4. ๋งค๊ฐœ๋ณ€์ˆ˜ ๋ฏผ๊ฐ๋„: ํ•ต์‹ฌ ๋งค๊ฐœ๋ณ€์ˆ˜(์˜ˆ: ํ›„๋ณด ์ง‘ํ•ฉ ํฌ๊ธฐ 64)์˜ ์˜ํ–ฅ ๋ฏธ๋ถ„์„

์˜ํ–ฅ๋ ฅ

  1. ํ•™์ˆ ์  ๊ฐ€์น˜: ์ •๋ ฌ ๋„คํŠธ์›Œํฌ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ ์ƒˆ๋กœ์šด ๊ธฐ์ˆ  ๊ฒฝ๋กœ ์ œ๊ณต
  2. ์‹ค์šฉ์  ๊ฐ€์น˜: ํ•˜๋“œ์›จ์–ด ์„ค๊ณ„ ๋ฐ ์•”ํ˜ธํ•™ ์‘์šฉ์— ์ง์ ‘์  ์˜๋ฏธ
  3. ๋ฐฉ๋ฒ•๋ก ์  ๊ธฐ์—ฌ: ํƒ์š•์  ํ™•์žฅ ์ „๋žต์ด ๋‹ค๋ฅธ ์กฐํ•ฉ ์ตœ์ ํ™” ๋ฌธ์ œ์— ์ ์šฉ ๊ฐ€๋Šฅ

์ ์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค

  1. ํ•˜๋“œ์›จ์–ด ์„ค๊ณ„: FPGA ๋ฐ ASIC์˜ ์ •๋ ฌ ํšŒ๋กœ ์ตœ์ ํ™”
  2. ๋ณ‘๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜: GPU ๋ฐ ๋‹ค์ค‘ ์ฝ”์–ด ํ”„๋กœ์„ธ์„œ์˜ ์ •๋ ฌ ๊ตฌํ˜„
  3. ์•”ํ˜ธํ•™: ์•ˆ์ „ํ•œ ๋‹ค์ž ๊ณ„์‚ฐ์—์„œ์˜ ๋ฌด๊ด€ ์ •๋ ฌ ํ”„๋กœํ† ์ฝœ
  4. ์ด๋ก  ์—ฐ๊ตฌ: ๋” ํฐ ๊ทœ๋ชจ ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ์˜ ๊ธฐ์ดˆ

์ฐธ๊ณ ๋ฌธํ—Œ

๋…ผ๋ฌธ์€ ํ•ด๋‹น ๋ถ„์•ผ์˜ ํ•ต์‹ฌ ๋ฌธํ—Œ์„ ์ธ์šฉํ•˜๋ฉฐ, ๋‹ค์Œ์„ ํฌํ•จํ•œ๋‹ค:

  • Knuth์˜ ๊ณ ์ „ ๊ต๊ณผ์„œ ใ€Š์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์˜ˆ์ˆ ใ€‹ ์ œ3๊ถŒ
  • AKS ๋„คํŠธ์›Œํฌ์˜ ์›๋ณธ ๋…ผ๋ฌธ
  • ์ตœ๊ทผ์˜ SAT ํ•ด๊ฒฐ ์ตœ์ ํ™” ๊ธฐ๋ฒ•CCFE+19
  • Bundala ๋ฐ Zรกvodnแปณ์˜ ์ ‘๋‘์‚ฌ ๊ฐ€์ง€์น˜๊ธฐ ๋ฐฉ๋ฒ•BZ14

์ข…ํ•ฉ ํ‰๊ฐ€: ์ด๋Š” ์ •๋ ฌ ๋„คํŠธ์›Œํฌ ์ตœ์ ํ™” ๋ถ„์•ผ์—์„œ ์‹ค์งˆ์  ์ง„์ „์„ ์ด๋ฃฌ ๊ณ ํ’ˆ์งˆ ๋…ผ๋ฌธ์ด๋‹ค. ๊ฐœ์„  ํญ์ด ์ž‘์•„ ๋ณด์ด์ง€๋งŒ(14์ธต์—์„œ 13์ธต), ์ด ์„ฑ์ˆ™ํ•œ ๋ถ„์•ผ์—์„œ๋Š” ๋ชจ๋“  ๊ฐœ์„ ์ด ๋งค์šฐ ๊ฐ€์น˜ ์žˆ๋‹ค. ๋…ผ๋ฌธ์˜ ๊ธฐ์ˆ ์  ํ˜์‹ ์„ฑ๊ณผ ์‹ค์šฉ์„ฑ์ด ๋ชจ๋‘ ์šฐ์ˆ˜ํ•˜๋ฉฐ, ํ•ด๋‹น ๋ถ„์•ผ์˜ ์ถ”๊ฐ€ ๋ฐœ์ „์„ ์œ„ํ•œ ๊ฐ€์น˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•๊ณผ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.