{VERSION 4 0 "IBM INTEL NT" "4.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "Hyperlink" -1 17 "" 0 1 0 128 128 1 2 0 1 0 0 0 0 0 0 1 }{CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 36 "" 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 256 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 257 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 258 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 259 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 260 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 261 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 262 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 263 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 264 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 265 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 266 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 267 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 268 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 269 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 270 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 271 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 272 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 273 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 274 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 275 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 276 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 277 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 278 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 279 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 280 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 281 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 282 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 283 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 284 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 285 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 286 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 287 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 288 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 289 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 290 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 291 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 292 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 293 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 294 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 295 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 296 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 297 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 298 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 299 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 300 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 301 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 302 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 303 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 304 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 305 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 306 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 307 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 308 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 309 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 310 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 311 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 312 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 313 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 314 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 315 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 316 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 317 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 318 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 319 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 320 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 321 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 322 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 323 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 324 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 325 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 326 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 327 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 328 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 329 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 330 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 331 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 332 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 333 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 334 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 335 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 336 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 337 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 338 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 339 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 340 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 341 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 342 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 343 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 344 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 345 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 346 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 347 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 348 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 349 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 350 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 351 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 352 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 353 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 354 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 355 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 356 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 357 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 358 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 359 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 360 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 361 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 362 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 363 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 364 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 365 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 366 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 367 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 368 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 369 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 370 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 371 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 372 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 373 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 374 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 375 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 376 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 377 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 378 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 379 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 380 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 381 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 382 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 383 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 384 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 385 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 386 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 387 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 388 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 389 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 390 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 391 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 392 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 393 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 394 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 395 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 396 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 397 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 398 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 399 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 400 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 401 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 402 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 403 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 404 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 405 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 406 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 407 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 408 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 409 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 410 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 411 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 412 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 413 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 414 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 415 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 416 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 417 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 418 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 419 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 420 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 421 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 422 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 423 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 424 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 425 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 426 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 427 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 428 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 429 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 430 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 431 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 432 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 433 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 434 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 435 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 436 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 437 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 438 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 439 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 440 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 441 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 442 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 443 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 444 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 445 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 446 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 447 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 448 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 449 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 450 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 451 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 452 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 453 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 454 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 455 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 456 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 457 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 458 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 459 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 460 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 461 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 462 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 463 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 464 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 465 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 466 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 467 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 468 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 469 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 470 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 471 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 472 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 473 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 474 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 475 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 476 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 477 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 478 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 479 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 480 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 481 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 482 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 483 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 484 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 485 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 486 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 487 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 488 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 489 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 490 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 491 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 492 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 493 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 494 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 495 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 496 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 497 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 498 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 499 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 500 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 501 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 502 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 503 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 504 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 505 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 506 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 507 "" 0 1 0 0 0 0 2 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 508 "" 0 1 0 0 0 0 2 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 509 "" 0 1 0 0 0 0 2 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 510 "" 0 1 0 0 0 0 2 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 511 "" 0 1 0 0 0 0 2 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 512 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 513 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 514 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 515 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 516 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 517 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 518 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 519 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 } {CSTYLE "" -1 520 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 521 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 522 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 523 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 524 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 525 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 526 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 527 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 528 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 529 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 } {CSTYLE "" -1 530 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 531 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 532 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 533 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 534 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 535 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 536 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 537 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 538 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 539 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 540 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 541 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 542 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 543 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 544 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 545 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 546 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 547 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 548 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 549 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 550 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 551 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 552 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 553 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 554 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 555 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 556 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 557 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 558 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 559 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 560 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 561 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 562 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 563 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 564 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 565 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 566 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 567 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 568 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 569 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 570 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 571 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 572 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 573 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 574 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 575 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 576 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 577 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 578 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 579 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 580 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 581 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 582 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 583 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 584 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 585 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 586 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 587 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 588 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 589 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 590 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 591 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 592 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 593 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 594 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 595 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 596 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 597 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 598 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 599 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 600 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 }{PSTYLE "Normal " -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Heading 1" -1 3 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 4 1 0 1 0 2 2 0 1 }{PSTYLE "Heading 2" -1 4 1 {CSTYLE "" -1 -1 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 2 1 0 1 0 2 2 0 1 }{PSTYLE "Heading 3" -1 5 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 1 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "List Item" -1 14 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 3 3 1 0 1 0 2 2 14 5 }{PSTYLE "Title" -1 18 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 1 2 2 2 1 1 1 1 }3 1 0 0 12 12 1 0 1 0 2 2 19 1 }{PSTYLE "Author" -1 19 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 1 0 0 8 8 1 0 1 0 2 2 0 1 }{PSTYLE "Heading 4" -1 20 1 {CSTYLE "" -1 -1 "T imes" 1 10 0 0 0 1 1 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 } {PSTYLE "Normal" -1 256 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "List Item" -1 257 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 1 1 1 1 }1 1 0 0 3 3 1 0 1 0 2 2 14 5 }} {SECT 0 {EXCHG {PARA 18 "" 0 "" {TEXT -1 27 "Abstract Algebra with Map le" }}{PARA 19 "" 0 "" {TEXT -1 3 "by " }{URLLINK 17 "Alec Mihailovs" 4 "http://webpages.shepherd.edu/amihailo" "" }}}{SECT 0 {PARA 3 "" 0 " " {TEXT -1 7 "Preface" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 40 "This manu al is intended to be used with " }{URLLINK 17 "Contemporary Abstract A lgebra" 4 "http://college.hmco.com/mathematics/gallian/abstract_algebr a/5e/students/" "" }{TEXT -1 5 ", by " }{URLLINK 17 "J. A. Gallian" 4 "http://www.d.umn.edu/~jgallian/" "" }{TEXT -1 55 ", 5th ed., Houghton Mifflin (2002). It was inspired by " }{URLLINK 17 "Abstract Algebra w ith GAP" 4 "http://college.hmco.com/mathematics/gallian/abstract_algeb ra/5e/students/gap.html" "" }{TEXT -1 4 " by " }{URLLINK 17 "J. G. Rai nbolt" 4 "http://euler.slu.edu/Dept/Faculty/rainbolt/rainbolt.html" " " }{TEXT -1 5 " and " }{URLLINK 17 "J. A. Gallian" 4 "http://www.d.umn .edu/~jgallian/" "" }{TEXT -1 252 ", Houghton Mifflin (2002). The latt er manual is available for free downloading from the book's web site a nd from the authors` websites. I highly recommend, in addition to this Maple manual, solve exercises from both the textbook and the GAP manu al. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 8 "I thank " }{URLLINK 17 "Joseph A. Gallian" 4 "http://www.d.umn.edu/~jgallian/" "" }{TEXT -1 71 " for his comments and suggestions and my Beautiful and Wonderful W ife, " }{URLLINK 17 "Bette" 4 "http://mihailovs.com/Bette" "" }{TEXT -1 19 ", for proofreading." }}}}{SECT 0 {PARA 3 "" 0 "" {TEXT -1 24 "A n Introduction to Maple" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 265 "Compar ing to other Computer Algebra Systems, such as GAP, Mathematica, Matla b, or MathCAD - Maple is the most user friendly and easy to use. It is available on many platforms, including Windows, Mac, and some UNIXes. The latest information about it can be found on " }{URLLINK 17 "http: //www.maplesoft.com" 4 "http://www.maplesoft.com" "" }{TEXT -1 5 " and " }{URLLINK 17 "http://www.mapleapps.com" 4 "http://www.mapleapps.com " "" }{TEXT -1 2 ". " }}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 18 "Keyboard Shortcuts" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 853 "Writing this manual , I am using Maple 6 on Windows, so some things, such as keyboard shor tcuts, might be different if you are using other operating systems. Th e best way to get familiar with Maple is to click Help and select New \+ User's Tour (or click Alt+h and n). Supposing that you have walked thr ough that Tour, I will underline just some things we will use often. O ne thing that might be annoying for some people is the absence of Copy and Paste in the context menus appearing on the screen after right-cl icking of the mouse. Instead of it, one has to use either toolbar butt ons for copying and pasting, or Ctrl+c for copying and Ctrl+v for past ing. I recommend using Ctrl+c, Ctrl+v as well as Ctrl+x for cutting, C trl+z for undoing, Ctrl+a for selecting all, Ctrl+p for printing, Ctrl +s for saving etc. Falling into this habit saves a lot of time. " }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 666 "Useful keyboard shortcuts for typ ing are Ctrl+t - starts the text mode, Ctrl+r - insert nonexecutable f ormula at the cursor while you are in the text mode - you have to clic k Ctrl+t after finishing it to return to the text mode. Ctrl+b, Ctrl+i , and Ctrl+u switch to bold, italics, or underlined scripts. If one is in the Maple Input mode, Shift+Enter allows one to go to the next lin e without the executing of the command. Ctrl+k inserts a new execution group before the cursor, and Ctrl+j - after. Maple uses functional ke ys effectively, too. F3 splits execution groups, F4 joins them, Shift+ F3 splits sections, and Shift+F4 joins them. To get help on any comman d, " }{TEXT 268 4 "plot" }{TEXT -1 238 ", for example, one can either \+ select the word, or just put a cursor somewhere inside it, or in front of it and hit the F1 key. Also, for getting a topic search window, o ne can type Alt+h, then t. For the full text search, Alt+h, then f. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 41 "See other keyboard shortcuts fo r Windows " }{URLLINK 17 "here" 4 "http://support.microsoft.com/defaul t.aspx?scid=kb;EN-US;q126449" "" }{TEXT -1 535 ". In particular, the \+ Windows key allows easy access to many Windows features. Some of my fa vorites are Win+e - starts Windows Explorer, Win +d - shows the deskto p. Surfing the Internet, one of the most useful keys is the Escape key - it stops animated gifs blinking :-) Backspace as well as Alt+(left arrow) returns you to the previous page in the Internet Explorer; Alt +(right arrow) forwards you to the next page (if you returned back bef ore that). Up and down arrows allow one to scroll through the text, bo th in Maple and in IE. " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 29 "Colo ns and Semicolons, % sign" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 247 "Anot her thing that one should remember from the very beginning is that one should end any statement either with a semicolon, or a colon. The dif ference is that Maple shows you the answer after a semicolon and hides it after a colon. For instance, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 " 2^200-1;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 7 "prints " }{XPPEDIT 18 0 "2^200-1;" "6#,&*$\"\"#\"$+#\"\"\"F'!\"\"" }{TEXT -1 82 ". If you hi t Enter without a colon, or a semicolon, you will get an error. Typing " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "plot(x^2,x=-1..1):" }} {PARA 0 "" 0 "" {TEXT -1 153 "won't produce any visible result, becaus e the command was ended with a colon. To see the picture, we can eithe r change the colon to a semicolon, or type " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "%;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 108 "which g ives us the plot of the parabola. % in this example means the latest M aple output. If we want to get " }{XPPEDIT 18 0 "2^200-1;" "6#,&*$\"\" #\"$+#\"\"\"F'!\"\"" }{TEXT -1 70 " again, we should use %%%, because \+ it is the 3rd output from the end: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "%%%+1;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 154 "As we \+ just saw, outputs after a colon were not visible, but had been done by Maple and should be counted to obtain a correct number of the percent signs. " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 8 "Comments" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 200 "Generally, the text mode can be used for comments. In the Maple Input mode, # plays the role similar to // in \+ C++, or % in LaTeX - it skips everything after that sign in the line w here it is located. " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Exercise s" }}{EXCHG {PARA 14 "" 0 "" {TEXT 269 1 "1" }{TEXT -1 35 ". What is t he shortcut Ctrl+f for? " }}{PARA 14 "" 0 "" {TEXT 270 1 "2" }{TEXT -1 97 ". Is the find/replace in Maple case sensitive, i.e. gives diffe rent results for maple and Maple? " }}{PARA 14 "" 0 "" {TEXT 271 1 "3 " }{TEXT -1 93 ". How, writing a Maple procedure, one goes to the nex t line without executing the commands? " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 275 3 "4-7" }{TEXT -1 47 ". Click Ctrl+n, Ctrl+t. In the \+ list of styles " }{BITMAP 119 20 20 1 "?TMGS;B:nH>?vH^>Z:@J;F:;B:;N:CZ<:;F:;Hj;H::yqy[:vYxi:vyyyYkE\\KF\\:::::::::h:@HvY:: :::::r]B\\>Hjy[IvyjyyjuyYBvyy=>Z:>xyyyyyY:::r]B\\>h:Lr=jAxyyyiIvy:vyIv yIv[jyYHvy:jyyiIvy:r=yy=YBvyaj=yyyyA:::xB\\B[=<:yyyxJr s=yy=YBvyA;ZyyyyyY:::r]>jB@kBDZB:;r=vyIv[jmyyZj=yIv[yyyyyyA:::xB;B;FZ[E:<:::::::::Z:xhqsW:::::::::<5A" }{TEXT -1 43 " on the far \+ left of the context bar, click " }{TEXT 36 5 "Title" }{TEXT -1 86 ". T ype \"Homework 1\" (without quotes). Hit Enter. Change the font in the list of fonts " }{BITMAP 143 20 20 1 "?TMgb;B:nH>?vK^>Z:@J;F:;B:;N:CZ<:;F:;Hj;H::yqy[:vYxi:vyyyYyay=::::::::::BvKF\\ KF\\:::::::::::]BInAry:::::::::Zr]Bl=[y=:::::::::\\I\\BI>[yyyy=YBvya:vyj y[yyyIvyjEv;ZymykA>ZI>xyy;[aIv;v[yMrwYXYBv:yyyyyy::\\I\\BI>r=Y:YryyyyYryB:xjyyiIv;yIvxyAKI>r=Y:;jAxj=Yr=Yjy=iyy[jyY[qAj:>KI>r=Y:Y ry>XyqAjyCvvyjAZ:vyjEv[qAZ:>[BZI>::[I:[y=yI:[ayyY:B:yIvryZjmAvyy=:::ZrE \\KF\\vJ:yA:<:ryZjmAvyy=:::Zr]Bl=Cv;B:yqywY:xZjmyyIBv;Zyuy::::BxB\\vJx yyyI:::::::::BxB\\vJry:::::::::Zryyyyyymu=:xI:::::::::BxKF\\K><:;::::: :::::::1:" }{TEXT -1 19 " and the font size " }{BITMAP 60 19 19 1 "?TM gh:B:nH>?^AV>Z:@J;F:;B:;N:CZ<:;F:;Hj;H::yqy[:vY xi:vyyyYKF\\KF\\::::>Z:v[yyyy=::>xyAXxIyA:\\I\\BI>ZyyYyA:BxB\\vJ:xZyyY:Zr]B> KI>ZjmyyI:Bx>JKn=;jAry:ZrM:>[BXvY:BxxIry::Zryyyyyymu]:ry::ZrA kB@KB<;J:<:::::\\J:3:" }{TEXT -1 416 " to anything you like. Type your name and Ctrl+j, Ctrl+. , and click the up-arrow key after that. Type \"Exercise 4.\" (without quotes) and click the down-arrow key. Type 1 00!; (including a semicolon) and hit Enter. Type ifactor(%); and hit E nter. Click Shift+F3, starting a new exercise, Exercise 5, and add, mu ltiply, subtract and divide a few numbers. Click Shift+F3 again starti ng Exercise 6 and plot the graph of " }{XPPEDIT 18 0 "x*sin(1/x);" "6# *&%\"xG\"\"\"-%$sinG6#*&F%F%F$!\"\"F%" }{TEXT -1 6 " from " }{TEXT 276 2 "x " }{TEXT -1 8 "= -1 to " }{TEXT 277 1 "x" }{TEXT -1 750 " = 1 . Click Shift+F3 again starting Exercise 7. Type with(plots): after th e Maple prompt and hit Enter. After the Maple prompt, type animate3d a nd click F1. Select the last example on the help page and click Ctrl+c . Click Ctrl+F4. Select animate3d and click Ctrl+v. Hit Enter. Click o n the picture, then on the play button in the toolbar. Use the mouse t o rotate the surface. Find the best-looking position and click the pla y button again. Click Ctrl+s, choose an appropriate place, give the wo rksheet a name you like and save it. Click Ctrl+p and print it. Click \+ Alt+f, then e, then h, and save the worksheet as an html file. Click W in+e to start Windows Explorer, find the html file you just saved and \+ click on it to see it in the browser. Enjoy. " }}}}}{SECT 0 {PARA 3 " " 0 "" {TEXT -1 16 "0. Preliminaries" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 22 "Properties of Integers" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 40 "I t is easy to factor integers in Maple: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "ifactor(2^57-1);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 95 "The greatest common divisor and the least common multiple can be e valuated in Maple as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "igcd(715,1001);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "il cm(843,216,51);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 67 "The next examp le shows how to find integer solutions of equations: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "isolve(7*x+15*y=1);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 59 "To find a particular solution, one can re place the unknown " }{XPPEDIT 18 0 "_Z1;" "6#%$_Z1G" }{TEXT -1 41 " by any integer value, for example, by 2:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "subs(_Z1=2,%);" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 18 "Modular Arithmetic" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 " Maple c an do modular arithmetic, too:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "345 mod 7;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 110 "It can be \+ used for checking the validity of money order numbers, UPS pickup reco rd numbers, ISBN numbers etc. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 61 "isMoneyOrder:= n -> n<10^11 and trunc(n/10) mod 9 = n mod 10: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 187 "This function first checks i f the number contains not more than 11 digits and then if the number f ormed by the first 10 digits is congruent to the last digit, i.e. chec k digit, modulo 9. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "isMo neyOrder(39539881642);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "i sMoneyOrder(39559881642);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 125 "The similar construction works for air ticket numbers and UPS pickup reco rds numbers, just by replacing modulo 9 to modulo 7:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "isUPS:= n -> n<10^10 and trunc(n/10) mod \+ 7 = n mod 10:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "isUPS(7681 139992);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "isUPS(121373147 3673);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "isAirTicket:= n - > n<10^15 and trunc(n/10) mod 7 = n mod 10:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "isAirTicket(1213731473673);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 102 "For the UPC code, one needs to use a dot product, s o we have to load the Linear Algebra package first:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "with(LinearAlgebra):" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 102 "isUPC:= n -> evalb(Vector[row](12,convert(n ,base,10)) . Vector([1,3,1,3,1,3,1,3,1,3,1,3]) mod 10 = 0):" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "isUPC(021000658978);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "isUPC(012000658978);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "A similar construction works for b ank checks:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 101 "isBankCheck := n -> evalb(Vector[row](9,convert(n,base,10)) . Vector([9,3,7,9,3,7, 9,3,7]) mod 10 = 0):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "isB ankCheck(13);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 103 "For ISBN number s we need a slightly more sophisticated method, because inputs can inc lude the letter X:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 324 "isIS BN:= proc(str) local s;\nwith(LinearAlgebra);\nif type(str,integer) th en s:=[str]; else\ns:=sscanf(str,\"%d%[Xx]\") end if;\nevalb(`if`(nops (s)=1,Vector[row](10,convert(s[1],base,10)),\n`if`(nops(s)=2 and not s [2]=\"\", Vector[row](10, [10,op(convert(s[1],base,10))]),Vector[row]( [1,0$9]))) . Vector([$ 1..10]) mod 11 = 0) end: " }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 19 "isISBN(0618122141);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "isISBN(\"618122141\");" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "isISBN(\"6x\");" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 237 "As you can see, ISBN numbers without an X can be entered either as integers, or as strings, inside quotes. ISBN numbers with a n X at the end must be entered inside quotes, because it is not one of the data formats that Maple recognizes. " }}}}{SECT 0 {PARA 4 "" 0 " " {TEXT -1 22 "Mathematical Induction" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 29 "Maple can evaluate many sums:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sum(i,i=1..n);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "simplify(%);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "sim plify(sum(i^10,i=1..n));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 " sort(%);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "The answers can be pr oven by mathematical induction as follows: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "f:=n->1/11*n^11+1/2*n^10+5/6*n^9-n^7+n^5-1/2*n^3+5 /66*n:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "f(1)=1 and simpli fy(f(n+1))=simplify(f(n)+(n+1)^10);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 145 "Also, Maple can find formulas for many polynomial sequences, f or example, sums of squares, 1, 5, 14, 30, 55, ..., using interpolatin g polynomial " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "interp([$1 ..5],[1,5,14,30,55],x);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "Since \+ formula is known, Maple can easily continue the sequence: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "f:=x->1/3*x^3+1/2*x^2+1/6*x: \nfor \+ N from 6 to 10 do f(N) od; " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 " Exercises" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 278 1 "1" } {TEXT -1 9 ". Factor " }{XPPEDIT 18 0 "3^100+1;" "6#,&*$\"\"$\"$+\"\" \"\"F'F'" }{TEXT -1 1 "." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 280 1 "2" }{TEXT -1 68 ". Find the greatest common divisor and the least c ommon multiple of " }{XPPEDIT 18 0 "670592745;" "6#\"*XFfq'" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "83810205;" "6#\")0-\"Q)" }{TEXT -1 2 ", " } {XPPEDIT 18 0 "113351790;" "6#\"*!z^L6" }{TEXT -1 6 ", and " } {XPPEDIT 18 0 "695529645;" "6#\"*X'Hbp" }{TEXT -1 2 ". " }}{PARA 14 " " 0 "" {TEXT -1 0 "" }{TEXT 283 1 "3" }{TEXT -1 41 ". Find integer sol utions of the equation " }{XPPEDIT 18 0 "42*x-47*y = 1;" "6#/,&*&\"#U \"\"\"%\"xGF'F'*&\"#ZF'%\"yGF'!\"\"F'" }{TEXT -1 1 "." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 284 1 "4" }{TEXT -1 68 ". Find the last digi t of the ISBN number starting from 1-894511-01. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 286 1 "5" }{TEXT -1 67 ". Find the formula for th e sum of 9th powers of integers from 1 to " }{TEXT 287 1 "n" }{TEXT -1 2 ". " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 289 1 "6" }{TEXT -1 129 ". Find the formula for the elements of the sequence 3, 17, 81, 25 5, 623, 1293, ... and find the next 4 elements of the sequence. " }}}} }{SECT 0 {PARA 3 "" 0 "" {TEXT -1 25 "1. Introduction to Groups" }} {SECT 0 {PARA 4 "" 0 "" {TEXT -1 26 "Cyclic and Dihedral Groups" }} {EXCHG {PARA 0 "" 0 "" {TEXT -1 194 "In this section we will study two series of groups, cyclic and dihedral, represented as rotations and s ymmetries of regular polygons. It is convenient to enumerate all the v ertices of a regular " }{TEXT 291 1 "n" }{TEXT -1 32 "-gon countercloc kwise from 1 to " }{TEXT 292 1 "n" }{TEXT -1 39 ". Now, if a symmetry \+ moves vertex 1 to " }{XPPEDIT 18 0 "a[1];" "6#&%\"aG6#\"\"\"" }{TEXT -1 14 ", vertex 2 to " }{XPPEDIT 18 0 "a[2];" "6#&%\"aG6#\"\"#" } {TEXT -1 25 ", and so on, ..., vertex " }{TEXT 295 1 "n" }{TEXT -1 4 " to " }{XPPEDIT 18 0 "a[n];" "6#&%\"aG6#%\"nG" }{TEXT -1 25 ", then we can denote it [" }{XPPEDIT 18 0 "a[1];" "6#&%\"aG6#\"\"\"" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "a[2];" "6#&%\"aG6#\"\"#" }{TEXT -1 7 ", ..., " }{XPPEDIT 18 0 "a[n];" "6#&%\"aG6#%\"nG" }{TEXT -1 32 "]. For example, rotation of 360/" }{TEXT 293 1 "n" }{TEXT -1 68 " degrees moves verte x 1 to 2, vertex 2 to 3, and so on, ..., vertex " }{TEXT 294 1 "n" } {TEXT -1 43 " to 1, so it can be denoted as [2, 3, ..., " }{TEXT 296 1 "n" }{TEXT -1 48 ", 1], which can be represented in Maple as [$2.." }{TEXT 297 1 "n" }{TEXT -1 221 ",1]. The identity (i.e. no change) wil l be represented as [1, 2, ..., n], or [$1..n] in Maple notation. See \+ Maple help item on \"dollar\", explaining that notation. Now we can de fine cyclic and dihedral groups as follows: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "cyclic:=n->[seq([$i..n,$1..i-1],i=1..n)]:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 71 "dihedral:=n->[op(cyclic(n)), seq([n+1-j$j=i..n,n+1-j$j=1..i-1],i=1..n)]:" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 52 "Cyclic groups are defined for all positive integers " } {TEXT 309 2 "n," }{TEXT -1 47 " but dihedral groups are defined here o nly for " }{TEXT 310 1 "n" }{TEXT -1 17 " not less than 3:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "dihedral(2);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 34 "Here are correctly defined groups:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "cyclic(3);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "dihedral(4);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 " In this notation, the last element of " }{XPPEDIT 18 0 "D[4];" "6#&%\" DG6#\"\"%" }{TEXT -1 457 " transfers vertex 1 to itself, vertex 2 to t he position of vertex 4, vertex 3 to itself, and vertex 4 to the posit ion of vertex 2, so it is the reflection across the diagonal connectin g 1 and 3, see the picture below. Permutation notation introduced abov e, is rather long. To make notation easier, we will denote elements ju st by their ordinal numbers in the lists of the group elements, so the identity will always be the number 1, and the last element of " } {XPPEDIT 18 0 "D[4];" "6#&%\"DG6#\"\"%" }{TEXT -1 13 " will be 8. " } }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 87 "In this new notation, to find th e inverse elements, we can use the following procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 110 "inv:=proc(a,g) local i,v,b,k; k:=n ops(g[a]); b:=[0$k]; for i to k do b[g[a][i]]:=i od; member(b,g,'v'); \+ v end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 12 "For example," }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "inv(5,cyclic(12));" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "inv(5,dihedral(4));" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "If we want to see the graphical re presentations of " }{TEXT 266 2 "kr" }{TEXT -1 13 " elements of " } {TEXT 263 1 "g" }{TEXT -1 16 ", starting from " }{TEXT 265 1 "m" } {TEXT -1 13 ", displaying " }{TEXT 264 1 "k" }{TEXT -1 26 " elements i n each row, in " }{TEXT 411 1 "r" }{TEXT -1 42 " rows, we can use the \+ following procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 920 "Gr id:=proc(g,m,k,r) local ngon,ngons1,ngons2,n,a,b,i,j1,j2,p,ar,l,ngonla bels,text1,text2,textar;\nwith(plots); with(plottools); n:=nops(g[1]); \nngon := (a,b) -> [seq([ a+cos(2*Pi*i/n), b+sin(2*Pi*i/n) ], i = 1.. n)]:\nngons1:=seq(seq(ngon(10*j1,-4*j2),j1=1..k),j2=1..r);\nngons2:=se q(seq(ngon(10*j1+4.5,-4*j2),j1=1..k),j2=1..r);\np:=polygonplot(\{ngons 1,ngons2\},axes=NONE,scaling=CONSTRAINED,color=aquamarine):\nar:=seq(s eq(arrow([10*j1+1.6,-4*j2],vector([1.2,0]),.05,.3,.3,color=blue),j1=1. .k),j2=1..r):\nngonlabels:=(a,b,l)->seq([ a+1.4*cos(2*Pi*i/n), b+1.4*s in(2*Pi*i/n),l[i+1] ], i = 0..n-1):\ntext1:=textplot([seq(seq(ngonlabe ls(10*j1,-4*j2,[$1..n]),j1=1..k),j2=1..r)],color=red): \ntext2:=textpl ot([seq(seq(ngonlabels(10*j1+4.5,-4*j2,g[inv(m-1+j1+k*(j2-1),g)]),j1=1 ..k),j2=1..r)],color=red):\ntextar:=textplot([seq(seq([10*j1+2.2,-4*j2 +.5,m-1+j1+k*(j2-1)],j1=1..k),j2=1..r)],color=blue):\ndisplay(p,ar,tex t1,text2,textar) end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 32 "Here is \+ the list of elements of " }{XPPEDIT 18 0 "D[4];" "6#&%\"DG6#\"\"%" } {TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "Grid(dihed ral(4),1,2,4);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 41 "Another example , the list of elements of " }{XPPEDIT 18 0 "D[10];" "6#&%\"DG6#\"#5" } {TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 51 "Grid(dihed ral(10),1,2,5);Grid(dihedral(10),11,2,5);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 90 "Also, we can use this procedure to display only one eleme nt. For example, 11th element in " }{XPPEDIT 18 0 "D[20];" "6#&%\"DG6# \"#?" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "Gri d(dihedral(20),11,1,1);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 81 "If we \+ want to see its representation as a permutation, it can be done as fol lows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "dihedral(20)[11]; " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "Cyclic group " }{XPPEDIT 18 0 "C[n];" "6#&%\"CG6#%\"nG" }{TEXT -1 5 " has " }{TEXT 267 2 "n " } {TEXT -1 28 "elements and dihedral group " }{XPPEDIT 18 0 "D[n];" "6#& %\"DG6#%\"nG" }{TEXT -1 5 " has " }{XPPEDIT 18 0 "2*n;" "6#*&\"\"#\"\" \"%\"nGF%" }{TEXT -1 20 " elements. Using the" }{TEXT 412 5 " nops" } {TEXT -1 22 " command can test it: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "nops(cyclic(12));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "nops(dihedral(100));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "Notice, that all elements of cyclic groups are rotations. The first " }{TEXT 256 1 "n" }{TEXT -1 13 " elements of " }{TEXT 257 8 "dihedral" }{TEXT -1 1 "(" }{TEXT 258 1 "n" }{TEXT -1 27 ") are rota tions, the other " }{TEXT 259 1 "n" }{TEXT -1 18 " are reflections. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 58 "To multiply elements, we can us e the following procedure: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 86 "mult:=proc(a,b,g) local i,v; member([seq(g[a][g[b][i]],i=1..nops(g [a]))],g,'v');v end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For examp le, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "mult(3,7,cyclic(12) );" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "mult(3,7,dihedral(4)) ;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "mult(7,3,dihedral(4)); " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 13 "Cayley Tables" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 61 "The following procedure displays the Cayl ey table of a group:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "cay ley:=g->Matrix(nops(g),(i,j)->mult(i,j,g)):" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 12 "For example," }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "cayley(dihedral(4));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 281 "It i s easy to see that the product of two reflections (i.e. numbers from 5 to 8) is a rotation, and the product of a reflection and a rotation i s a rotation. Another evident thing is that reflections are inverse to themselves. Notice that the matrix is not symmetric because group " } {XPPEDIT 18 0 "D[4];" "6#&%\"DG6#\"\"%" }{TEXT -1 80 " is not Abelian. The following procedure is checking whether a group is Abelian:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "isAbelian:=g->IsMatrixShape( cayley(g),symmetric):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "is Abelian(dihedral(4));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "For cycl ic groups Cayley tables are very symmetric:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "cayley(cyclic(12));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 289 "It is a placeholder. By default, Maple shows them for ma trices larger than 10x10. To work with the matrix, one should right-cl ick on the placeholder and use the context menu. In case we want to se e the matrix in the worksheet instead of that, we should increase the \+ default size of rtable:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 " interface(rtablesize=25):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "%;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "Right-clicking still shows the same context menu. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "isAbelian(cyclic(12));" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 10 "Oper ations" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 63 "If we need to do a lot o f calculations in some specific group, " }{XPPEDIT 18 0 "D[4];" "6#&% \"DG6#\"\"%" }{TEXT -1 92 ", for instance, we can define special multi plication and inverse element operations for it: " }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 29 "`&*`:=(a,b)->mult(a,b,Group):" }{TEXT -1 0 " " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "Before using it, we should sp ecify the group:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "Group:= dihedral(4):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "3&*4;" } {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 35 "Similarly for the inverse element, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "`&-`: =a->inv(a,Group):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "&-2;" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "2&*5&*&-2;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 144 "One has to be very careful with that tho ugh, since the answers depend on the group, and for calculations in ot her groups we should redefine the " }{TEXT 415 5 "Group" }{TEXT -1 1 " ." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "Group:=cyclic(12):" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "3&*4;" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 10 "2&*5&*&-2;" }{TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Exercises" }} {EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 302 1 "1" }{TEXT -1 19 ". Draw elements of " }{XPPEDIT 18 0 "D[3];" "6#&%\"DG6#\"\"$" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "C[6];" "6#&%\"CG6#\"\"'" }{TEXT -1 2 ". \+ " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 312 1 "2" }{TEXT -1 23 ". Dr aw 15th element of " }{XPPEDIT 18 0 "D[24];" "6#&%\"DG6#\"#C" }{TEXT -1 2 ". " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 318 1 "3" }{TEXT -1 28 ". Represent 15th element of " }{XPPEDIT 18 0 "D[24];" "6#&%\"DG6# \"#C" }{TEXT -1 18 " as a permutation." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 304 1 "4" }{TEXT -1 27 ". Display Cayley tables of " } {XPPEDIT 18 0 "D[3];" "6#&%\"DG6#\"\"$" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "C[6];" "6#&%\"CG6#\"\"'" }{TEXT -1 28 ". Are these groups Abelia n? " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 305 1 "5" }{TEXT -1 7 ". \+ Find " }{XPPEDIT 18 0 "a*b*a^`-1`;" "6#*(%\"aG\"\"\"%\"bGF%)F$%#-1GF% " }{TEXT -1 26 "for all pairs of elements " }{TEXT 306 1 "a" }{TEXT -1 5 " and " }{TEXT 307 1 "b" }{TEXT -1 6 " from " }{XPPEDIT 18 0 "D[3 ];" "6#&%\"DG6#\"\"$" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "D[4];" "6#&% \"DG6#\"\"%" }{TEXT -1 1 "." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 308 1 "6" }{TEXT -1 30 ". Guess if 11&*17&*27&*&-3 in " }{XPPEDIT 18 0 "D[15];" "6#&%\"DG6#\"#:" }{TEXT -1 74 " is a rotation, or a reflect ion, and check it out by direct calculation. " }}}}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 0 {PARA 3 "" 0 "" {TEXT -1 9 "2. Groups" }} {SECT 0 {PARA 4 "" 0 "" {TEXT -1 7 "Groups " }{TEXT 298 1 "U" }{TEXT -1 1 "(" }{TEXT 299 1 "n" }{TEXT -1 1 ")" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 33 "Here is the definition of groups " }{XPPEDIT 18 0 "U(n); " "6#-%\"UG6#%\"nG" }{TEXT -1 33 " formed by relatively prime with " } {TEXT 300 2 "n " }{TEXT -1 13 "integers mod " }{TEXT 301 1 "n" }{TEXT -1 18 ". I used the name " }{TEXT 414 2 "un" }{TEXT -1 16 " for them s ince " }{XPPEDIT 18 0 "U;" "6#%\"UG" }{TEXT -1 48 " is reserved in Map le for Chebyshev polynomials." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "un:=n->select(m->evalb(igcd(m,n)=1),[$1..n]):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "un(12);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "for N to 100 do T[N]:=nops(un(N)) od:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 43 "Here are the numbers of elements of group s " }{XPPEDIT 18 0 "U(n);" "6#-%\"UG6#%\"nG" }{TEXT -1 5 " for " } {TEXT 260 2 "n " }{TEXT -1 58 "from 1 to 100, written so that 78=24 me ans that the group " }{XPPEDIT 18 0 "U(78);" "6#-%\"UG6#\"#y" }{TEXT -1 17 " has 24 elements." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "op(op(T));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "The number theory \+ package has a built in function " }{TEXT 261 3 "phi" }{TEXT -1 19 " fo r these numbers:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "with(nu mtheory):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "phi(78);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 25 "Cayley tables for groups " } {XPPEDIT 18 0 "U(n);" "6#-%\"UG6#%\"nG" }{TEXT -1 42 " can be found us ing the following command:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "CayleyU:=n->Matrix(nops(un(n)),(i,j)->un(n)[i]*un(n)[j] mod n):" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "CayleyU(42);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 35 "To find inverse elements of groups " } {XPPEDIT 18 0 "U(n);" "6#-%\"UG6#%\"nG" }{TEXT -1 37 " one can use the following procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "in vU:=proc(a,n) local v; igcdex(a,n,'v'); v mod n end:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "invU(23,42);" }}}}{SECT 0 {PARA 4 "" 0 " " {TEXT -1 19 "Matrix Groups mod n" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "Maple is good for calculations with matrix groups." }{TEXT 321 0 " " }{TEXT -1 45 " The following examples are self-explanatory." }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "with(LinearAlgebra):" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "A:=Matrix([[1,2],[3,4]]);" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "B:=Inverse(A) mod 5;" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "A.B;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "Map(x->x mod 5,%);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "A^(-1);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 153 "Maple operates faster with lists than with matrices or Matrices. That's why it is better to define matrix groups using lists instead of Matrices. Groups " }{XPPEDIT 18 0 "GL(2,Z[n]);" "6#-%#GLG6$\"\"#&%\"ZG6#%\"nG" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "SL(2,Z[n]);" "6#-%#SLG6$\"\"#&%\"Z G6#%\"nG" }{TEXT -1 27 " can be defined as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 137 "gl2:=n->select(A->evalb(igcd(A[1,1]*A[2, 2]-A[1,2]*A[2,1],n)=1),\n[seq(seq(seq(seq([[j,i],[l,k]],l=0..n-1),k=0. .n-1),j=0..n-1),i=0..n-1)]):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 135 "sl2:=n->select(A->evalb(A[1,1]*A[2,2]-A[1,2]*A[2,1] mod n=1),\n [seq(seq(seq(seq([[j,i],[l,k]],l=0..n-1),k=0..n-1),j=0..n-1),i=0..n-1) ]):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 49 "Here are the numbers of el ements of some of them:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 " for N from 2 to 6 do nops(sl2(N)) od;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "for N from 2 to 6 do nops(gl2(N)) od;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "Look at some of their elements:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "map(matrix,sl2(2));" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "matrix(gl2(6)[256]);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 18 "Multiplication in " }{TEXT 324 2 " GL" }{TEXT -1 1 "(" }{TEXT 325 1 "n" }{TEXT -1 6 ") and " }{TEXT 326 2 "SL" }{TEXT -1 1 "(" }{TEXT 327 1 "n" }{TEXT -1 28 ") can be defined as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 160 "mm:=(A,B,n )->[[A[1,1]*B[1,1] +A[1,2]*B[2,1] mod n,A[1,1]*B[1,2] +A[1,2]*B[2,2] m od n ],[A[2,1]*B[1,1] +A[2,2]*B[2,1] mod n,A[2,1]*B[1,2] +A[2,2]*B[2,2 ] mod n]]:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 12 "For example," }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 43 "matrix(mm([[1,2],[3,4]],[[5, 6],[7,8]],11));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "Inverse elemen ts also can be determined by a direct calculation. In " }{TEXT 328 2 " SL" }{TEXT -1 1 "(" }{TEXT 329 1 "n" }{TEXT -1 26 ") it is especially \+ simple:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "invSL:=(A,n)->[[ A[2,2],-A[1,2] mod n],[-A[2,1] mod n, A[1,1]]]:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 139 "invGL:=proc(A,n) local d; d:=invU(A[1,1]*A[2, 2]-A[1,2]*A[2,1],n);\n[[A[2,2]*d mod n,-A[1,2]*d mod n],[-A[2,1]*d mod n, A[1,1]*d mod n]] end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For \+ example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "matrix(invSL([ [3,4],[5,7]],20));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "matri x(invGL([[1,2],[3,4]],25));" }}}{SECT 0 {PARA 5 "" 0 "" {TEXT -1 5 "No te." }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 19 "We need to include " } {TEXT 454 2 "mm" }{TEXT -1 2 ", " }{TEXT 455 5 "invSL" }{TEXT -1 6 ", \+ and " }{TEXT 456 5 "invGL" }{TEXT -1 12 " inside the " }{TEXT 457 8 "m atrix()" }{TEXT -1 115 ", if we want to see the output as a matrix. Ot herwise the output would look as a list of matrix rows. To apply the \+ " }{TEXT 458 8 "matrix()" }{TEXT -1 27 " to every element of a set " } {TEXT 459 1 "S" }{TEXT -1 29 ", we need to use the command " }{TEXT 460 15 "map(matrix, S);" }{TEXT -1 1 "." }}}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 16 "Group Definition" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 21 "W e'll define a group " }{TEXT 452 1 "G" }{TEXT -1 67 " in a standard wa y, as a 2-element list containing a set or a list " }{TEXT 451 1 "G" } {TEXT -1 41 "[1] with an associative binary operation " }{TEXT 453 1 " G" }{TEXT -1 102 "[2] having an identity and inverses for all elements . To do that, we need to define a few procedures. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 107 "The following procedure is checking if the rows \+ of the Cayley table are permutations of the group elements:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 134 "isCP:=proc(g,m) local i,j; \ni:=1; while (i<=nops(g) and \{seq(m(g[i],g[j]),j=1..nops(g))\}=\{op( g)\}) do i:=i+1 od; evalb(i=nops(g)+1) end:" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 50 "The following procedure is checking associativity:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 237 "isAssociative:=proc(g,m) lo cal i,j,k;\ni:=1; j:=1; k:=1; while(i<=nops(g) and \nm(m(g[i],g[j]),g[ k])=m(g[i],m(g[j],g[k]))) do if k=nops(g) then if j=nops(g) then i:=i+ 1; j:=1; k:= 1 else j:=j+1 fi else k:=k+1 fi od; evalb(i=nops(g)+1) en d:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 87 "The following example shows that these two procedures are not enough to define a group." }}} {SECT 0 {PARA 5 "" 0 "" {TEXT -1 10 "Example 1." }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 5 " Let " }{TEXT 374 1 "g" }{TEXT -1 57 " be an arbitrar y set containing more than 1 element, and " }{TEXT 375 1 "m" }{TEXT -1 1 "(" }{TEXT 376 3 "a,b" }{TEXT -1 4 ") = " }{TEXT 377 1 "b" } {TEXT -1 16 " for all pairs (" }{TEXT 378 3 "a,b" }{TEXT -1 17 ") of e lements of " }{TEXT 379 1 "g" }{TEXT -1 29 ". It is not a group, becau se " }{TEXT 380 8 "ab = bb " }{TEXT -1 12 "would imply " }{TEXT 381 5 "a = b" }{TEXT -1 22 " in a group. However, " }{TEXT 382 2 "m " } {TEXT -1 95 "is associative and every row of the Cayley table is the t rivial permutation of the elements of " }{TEXT 383 1 "g" }{TEXT -1 1 " :" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "isCP(\{0,1\},(a,b)->b) ;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "isAssociative(\{0,1\}, (a,b)->b);" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 125 "The following The orem shows that an additional property of the existence of a right ide ntity is enough for defining a group. " }}}{SECT 0 {PARA 5 "" 0 "" {TEXT -1 10 "Theorem 1." }}{EXCHG {PARA 256 "" 0 "" {TEXT -1 4 "Let " }{TEXT 353 1 "m" }{TEXT -1 44 " be a binary associative operation on a set " }{TEXT 354 1 "G" }{TEXT -1 9 " so that " }}{PARA 257 "" 0 "" {TEXT 385 1 "i" }{TEXT -1 12 ") for every " }{TEXT 384 1 "g" }{TEXT -1 4 " in " }{TEXT 355 1 "G" }{TEXT -1 28 " the left multiplication by " }{TEXT 356 1 "g" }{TEXT -1 24 " is one-to-one and onto " }{TEXT 357 1 "G" }{TEXT -1 25 ", i.e. for every element " }{TEXT 358 1 "f" } {TEXT -1 4 " of " }{TEXT 359 1 "G" }{TEXT -1 27 " there is a unique el ement " }{TEXT 360 1 "h" }{TEXT -1 4 " of " }{TEXT 361 1 "G" }{TEXT -1 9 " so that " }{TEXT 362 6 "f = gh" }{TEXT -1 2 "; " }}{PARA 257 " " 0 "" {TEXT 386 2 "ii" }{TEXT -1 32 ") there exists a right identity \+ " }{TEXT 387 1 "e" }{TEXT -1 10 ", so that " }{TEXT 388 5 "ge=g " } {TEXT -1 18 "for every element " }{TEXT 389 1 "g" }{TEXT -1 4 " of " } {TEXT 390 1 "G" }{TEXT -1 2 ". " }}{PARA 256 "" 0 "" {TEXT -1 13 "Then the set " }{TEXT 363 1 "G" }{TEXT -1 20 " with the operation " } {TEXT 364 1 "m" }{TEXT -1 13 " is a group. " }}}{SECT 0 {PARA 20 "" 0 "" {TEXT -1 6 "Proof." }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 17 " Pick an \+ element " }{TEXT 365 2 "g " }{TEXT -1 3 "in " }{TEXT 366 1 "G" }{TEXT -1 20 ". By associativity, " }{TEXT 368 5 "gh = " }{TEXT -1 1 "(" } {TEXT 367 8 "ge)h = g" }{TEXT -1 1 "(" }{TEXT 370 2 "eh" }{TEXT -1 1 " )" }{TEXT 369 1 " " }{TEXT -1 5 ", so " }{TEXT 371 5 "h =eh" }{TEXT -1 11 " for every " }{TEXT 372 2 "h " }{TEXT -1 58 "(by the one-to-one property of the left multiplication by " }{TEXT 373 1 "g" }{TEXT -1 19 "). That means that " }{TEXT 391 1 "e" }{TEXT -1 32 " is a left ide ntity as well. By " }{TEXT 395 1 "i" }{TEXT -1 32 "), there exists uni que elements " }{TEXT 392 2 "h " }{TEXT -1 4 "and " }{TEXT 396 1 "x" } {TEXT -1 4 " of " }{TEXT 393 1 "G" }{TEXT -1 9 " so that " }{TEXT 394 6 "gh = e" }{TEXT -1 5 " and " }{TEXT 397 6 "hx = e" }{TEXT -1 8 ". Th en, " }{TEXT 398 4 "x = " }{TEXT -1 1 "(" }{TEXT 399 2 "gh" }{TEXT -1 1 ")" }{TEXT 400 5 "x = g" }{TEXT -1 1 "(" }{TEXT 401 2 "hx" }{TEXT -1 2 ") " }{TEXT 402 3 "= g" }{TEXT -1 18 ", in other words, " }{TEXT 403 11 "gh = hg = e" }{TEXT -1 5 ", so " }{TEXT 404 1 "h" }{TEXT -1 26 " is an inverse element of " }{TEXT 405 1 "g" }{TEXT -1 104 ". Sinc e the operation is associative and there exists an identity and invers es of all elements, the set " }{TEXT 406 2 "G " }{TEXT -1 19 "with the operation " }{TEXT 407 1 "m" }{TEXT -1 13 " is a group. " }}}}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "The following procedure is checkin g if a set " }{TEXT 408 1 "g" }{TEXT -1 19 " with an operation " } {TEXT 409 1 "m" }{TEXT -1 13 " (satisfying " }{TEXT 410 4 "isCP" } {TEXT -1 24 ") has a right identity: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 172 "hasRightId:=proc(g,m) local i,k; \nmember(g[1],[seq( m(g[1],g[i]), i=1..nops(g))],'k'); i:=1;\nwhile (i<=nops(g) and m(g[i] ,g[k])=g[i]) do i:=i+1 od; \nevalb(i=nops(g)+1) end: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "Here is a negative example: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "hasRightId([0,1],(a,b)->b);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 53 "Finally, we can introduce a new Ma ple type - a group:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 183 "`ty pe/group`:=proc(g) \ntype(g,list) and nops(g)=2 and (type(g[1],list) o r type(g[1],set)) and type(g[2],procedure) and isCP(op(g)) and isAssoc iative(op(g)) and hasRightId(op(g)) end: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 49 "Let's check a few examples of the groups we know:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "type([un(42),(i,j)->i*j mod \+ 42],group);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "type([[$1..8 ],(a,b)->mult(a,b,dihedral(4))],group); " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "type([sl2(3),(A,B)->mm(A,B,3)],group);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "type([[$0..9],(a,b)->a+b mod 10],gr oup);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 32 "If we know that the set \+ or list " }{TEXT 322 1 "g" }{TEXT -1 20 " with the operation " }{TEXT 323 1 "m" }{TEXT -1 68 " is a group, the identity and the inverses can be found as follows: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 84 "I d:=proc(g,m) local i,k; member(g[1],[seq(m(g[1],g[k]),k=1..nops(g))],' i');g[i] end:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 87 "Inv:=proc( a,g,m) local i,k; member(Id(g,m),[seq(m(a,g[k]),k=1..nops(g))],'i');g[ i] end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "matrix(Id(gl2(5),(a,b)->mm(a ,b,5)));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 51 "matrix(Inv([[1, 2],[3,4]],gl2(5),(a,b)->mm(a,b,5)));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "The Cayley table can be displayed as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "cayleyTable:=(g,m)->Matrix(nops(g),(i,j)- >m(g[i],g[j])):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 17 "For example, f or " }{XPPEDIT 18 0 "Z[10];" "6#&%\"ZG6#\"#5" }{TEXT -1 2 ": " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "cayleyTable([$0..9],(a,b)->a +b mod 10);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 84 "We can check if th e group is Abelian by checking if the Cayley table is symmetric: " }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 110 "isAbelianGroup:=(g,m)->IsM atrixShape(cayleyTable(g,m),symmetric):\n#type(cayleyTable(g,m),'Matri x'(symmetric)):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, \+ " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "isAbelianGroup([$0..9], (a,b)->a+b mod 10);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "isAb elianGroup(sl2(2),(a,b)->mm(a,b,2));" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 20 "Redefining of Groups" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 245 "If we knew the group identity and the inverses, we can save time \+ in many calculations. That's why it is convenient to add the identity \+ and the procedure finding the inverse elements to the group definition . We define an extended group as a list " }{TEXT 446 1 "G" }{TEXT -1 33 " containing four elements, a set " }{TEXT 447 1 "G" }{TEXT -1 41 " [1], a binary operation (multiplication) " }{TEXT 448 1 "G" }{TEXT -1 18 "[2], the identity " }{TEXT 449 1 "G" }{TEXT -1 39 "[3], and the un ary operation (inverse) " }{TEXT 450 1 "G" }{TEXT -1 4 "[4]:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 217 "`type/extendedGroup`:=proc( g) local i;\nif type(g,list) and nops(g)=4 and type([g[1],g[2]],group) and g[2](g[1][1],g[3])=g[1][1] \nthen i:=1; while not i=nops(g[1])+1 \+ and g[2](g[1][i],g[4](g[1][i]))=g[3] do i:=i+1 od; \n" }{TEXT -1 0 "" }{MPLTEXT 1 0 40 "evalb(i=nops(g[1])+1) else false fi end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 313 "It might be annoying to enter the same o perations repeatedly many times for the groups we know. So we can rede fine the groups, including the operations, the identities, and the inv erses in their definitions. I'll do that in the order they have appear ed in this manual, starting their names with capital letters: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 85 "Cyclic:=n->[[$1..n], (a,b)-> `if`(a+b-1<=n,a+b-1,(a+b-1)-n), 1, a->`if`(a=1,1,n-a+2)]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 87 "Dihedral:=n->[[$1..2*n], (a,b)->mul t(a,b,dihedral(n)), 1, a->`if`(a=1 or a>n,a,n-a+2)]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "Un:=n->[un(n),(a,b)->a*b mod n, 1, a->inv U(a,n)]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "GL2:=n->[gl2(n) ,(a,b)->mm(a,b,n),[[1,0],[0,1]],a->invGL(a,n)]:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 62 "SL2:=n->[sl2(n),(a,b)->mm(a,b,n),[[1,0],[0,1]] ,a->invSL(a,n)]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 51 "Z:=n->[ [$0..n-1],(a,b)->a+b mod n, 0, a->-a mod n]:" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 55 "Now we can test the correctness of the new definitions: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "type(Cyclic(10),extende dGroup);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "type(Dihedral(5 ),extendedGroup);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "type(U n(12),extendedGroup);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "ty pe(GL2(2),extendedGroup);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "type(SL2(3),extendedGroup);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "type(Z(20),extendedGroup);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "Cayley tables for the extended Groups can be defined as follows :" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "Cayley:=g->cayleyTable (g[1],g[2]):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "Map(matrix,Cayley(SL2(2))); " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 111 "The same as we did before, w e can check if the group is Abelian by checking if the Cayley table is symmetric: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "IsAbelian: =g->isAbelianGroup(g[1],g[2]):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "IsAbelian (Z(100));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "IsAbelian(Un(1 5));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "IsAbelian(GL2(3)); " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 12 "Every group " }{TEXT 461 1 "G " }{TEXT -1 48 ", defined as a 2-element list, containing a set " } {TEXT 462 1 "G" }{TEXT -1 27 "[1] and a binary operation " }{TEXT 463 1 "G" }{TEXT -1 95 "[2], can be easily converted to the extended group by adding the identity and inverse element: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 92 "`convert/extendedGroup`:=proc(g) local a, i; \ni :=a->Inv(a,(op(g))); [op(g),Id(op(g)),i] end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "convert([[$0..10],(a,b)->a+b mod 11],extendedGroup):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "type(%,extendedGroup);" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Exercises" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 330 1 "1" }{TEXT -1 41 ". Find the numbers of ele ments of groups " }{TEXT 331 1 "U" }{TEXT -1 5 "(5), " }{TEXT 332 1 "U " }{TEXT -1 6 "(25), " }{TEXT 333 1 "U" }{TEXT -1 11 "(125), and " } {TEXT 334 1 "U" }{TEXT -1 7 "(625). " }}{PARA 14 "" 0 "" {TEXT -1 0 " " }{TEXT 337 1 "2" }{TEXT -1 30 ". Display the Cayley table of " } {TEXT 338 1 "U" }{TEXT -1 6 "(40). " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 341 1 "3" }{TEXT -1 29 ". Find the inverse of 151 in " }{TEXT 342 1 "U" }{TEXT -1 7 "(212). " }}{PARA 14 "" 0 "" {TEXT -1 0 "" } {TEXT 343 1 "4" }{TEXT -1 30 ". Find the inverse matrix of " } {XPPEDIT 18 0 "matrix([[137, 253], [217, 19]]);" "6#-%'matrixG6#7$7$\" $P\"\"$`#7$\"$<#\"#>" }{TEXT -1 13 " mod 321. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 348 1 "5" }{TEXT -1 23 ". Find the product of " }{XPPEDIT 18 0 "RTABLE(17963580,MATRIX([[23, 45], [56, 78]]));" "6#-%' RTABLEG6$\")!ejz\"-%'MATRIXG6#7$7$\"#B\"#X7$\"#c\"#y" }{TEXT -1 7 " a nd " }{XPPEDIT 18 0 "RTABLE(17791708,MATRIX([[75, 11], [23, 51]]));" "6#-%'RTABLEG6$\")3 " 0 "" {MPLTEXT 1 0 12 "order(7,15);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "order(31,42);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 23 "The cyclic subgroup of " }{XPPEDIT 18 0 "U(n);" "6#-%\"UG6#%\"nG" } {TEXT -1 14 " generated by " }{TEXT 262 1 "a" }{TEXT -1 45 ", can be f ound using the following procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "cycleU:=(c,n)->[seq(c^(i-1) mod n, i=1..order(c,n))]: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "cycleU(7,15);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "cycleU(31,42);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 56 "In general, the cyclic subgroup generated by an element " }{TEXT 416 1 "c" }{TEXT -1 24 " of an (extended) grou p " }{TEXT 413 1 "g" }{TEXT -1 44 " can be found using the following p rocedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 104 "Cycle:=proc(c ,g) local v,a;\nv:=[g[3]]; a:=c; \nwhile not a=g[3] do v:=[op(v),a]; a :=g[2](a,c) od; v end: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 52 "For ex ample, the cyclic subgroup generated by 10 in " }{XPPEDIT 18 0 "Z[25]; " "6#&%\"ZG6#\"#D" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "Cycle(10,Z(25));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 17 "Another example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "ma p(matrix,Cycle([[1,2],[3,4]],GL2(5)));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 92 "The orders of elements can be found as the orders of the \+ cyclic subgroups generated by them:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 90 "Ord:=proc(c,g) local a,n;\na:=c; n:=1; \nwhile not a= g[3] do n:=n+1; a:=g[2](a,c) od; n end:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "Ord([[1,2],[3,4]],SL2(5));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "Ord([[2,3],[4,5]],GL2(11));" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 17 "Ord(715,Z(1001));" }}}}{SECT 0 {PARA 4 "" 0 " " {TEXT -1 23 "Center and Centralizers" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 30 "The centralizer of an element " }{TEXT 423 2 "a " }{TEXT -1 21 "of an extended group " }{TEXT 422 1 "G" }{TEXT -1 30 " can be d etermined as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 137 "C entralizerE:=proc(a,G) local i,v;\nv:=[]; for i to nops(G[1]) do if G[ 2](G[1][i],a)=G[2](a,G[1][i]) then v:=[op(v),G[1][i]] fi od; v end:" } }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "CentralizerE(8,Cyclic(8));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "CentralizerE(8,Dihedral(4));" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 20 "The centralizer of a" }{TEXT 425 1 " " }{TEXT -1 7 "subset " }{TEXT 427 1 "S" }{TEXT -1 0 "" }{TEXT 426 1 " " }{TEXT -1 21 "of an extended group " }{TEXT 424 1 "G" } {TEXT -1 31 " can be determined as follows: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 205 "CentralizerS:=proc(S,G) local i,j,v; \nv:=[]; f or i to nops(G[1]) do j:=1; while not j=nops(S)+1 and \nG[2](G[1][i],S [j])=G[2](S[j],G[1][i]) do j:=j+1 od; if j=nops(S)+1 then v:=[op(v),G[ 1][i]] fi od; v end:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "Cen tralizerS([7,8],Dihedral(4));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 44 " The center is the centralizer of the group: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "Center:=G->CentralizerS(G[1],G):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "Center(Dihedral(7));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "Center(Dihedral(10));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "map(matrix,Center(GL2(3)));" }}} {SECT 0 {PARA 5 "" 0 "" {TEXT -1 5 "Note." }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 48 "Why do we need two commands for a centralizer - " }{TEXT 442 12 "CentralizerE" }{TEXT -1 5 " and " }{TEXT 443 12 "CentralizerS " }{TEXT -1 210 "? Why can't we use one command, Centralizer, for both cases? The problem is that some elements of a group can be equal to s ome sets of other elements. For example, a group can contain elements \+ 1, 2, and \{1,2\}. " }}{PARA 0 "" 0 "" {TEXT -1 89 "What would the Cen tralizer(\{1,2\}) be in that case? The centralizer of the element \{1, 2\}, " }{TEXT 444 12 "CentralizerE" }{TEXT -1 49 "(\{1,2\}), or the ce ntralizer of the subset \{1,2\}, " }{TEXT 445 12 "CentralizerS" } {TEXT -1 138 "(\{1,2\})? Since we can't distinguish between these two \+ cases by checking the type of an argument, we need two different comma nds for that. " }}}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 15 "A Subgroup T est" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 89 "According to Theorem 3.3 on p. 62 of Dr. Gallian's text, to test whether a finite subset " } {TEXT 417 1 "H" }{TEXT -1 18 " is a subgroup of " }{TEXT 418 1 "G" } {TEXT -1 27 ", it is enough to check if " }{TEXT 419 1 "H" }{TEXT -1 16 " is a subset of " }{TEXT 573 1 "G" }{TEXT -1 47 " and it is closed under the group operation of " }{TEXT 420 1 "G" }{TEXT -1 16 ". So we can use " }{TEXT 421 4 "isCP" }{TEXT -1 11 " for that: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "isSubgroup:=(h,G)->verify(\{op(h)\} ,\{op(G[1])\},subset) and isCP(h,G[2]):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "isSubgroup(Cycle(8,Z(33)),Z(33));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "isSubgroup(Cycle([[1,2],[2,0]],GL2(5)),SL2(5));" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 86 "Certainly, cyclic subgroups are su bgroups :-) as well as the center and centralizers: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "isSubgroup(CentralizerE(11,Dihedral(6)),D ihedral(6));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "isSubgroup( CentralizerS(\{[[1,2],[3,4]],[[1,3],[2,4]]\},GL2(5)),GL2(5));" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "isSubgroup(Center(SL2(4)),SL 2(4));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 29 "Finally, an opposite ex ample:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "isSubgroup(Z(5)[1 ],Z(10));" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Exercises" }} {EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 428 1 "1" }{TEXT -1 25 ". Find the order of 7 in " }{TEXT 429 1 "U" }{TEXT -1 10 "(100) and " } {TEXT 430 1 "U" }{TEXT -1 6 "(11). " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 433 1 "2" }{TEXT -1 25 ". Find the order of 6 in " }{XPPEDIT 18 0 "Z[7];" "6#&%\"ZG6#\"\"(" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "Z[8]; " "6#&%\"ZG6#\"\")" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "Z[9];" "6#&%\"ZG6 #\"\"*" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "Z[10];" "6#&%\"ZG6#\"#5" } {TEXT -1 2 ", " }{XPPEDIT 18 0 "Z[11];" "6#&%\"ZG6#\"#6" }{TEXT -1 6 " , and " }{XPPEDIT 18 0 "Z[12];" "6#&%\"ZG6#\"#7" }{TEXT -1 2 ". " }} {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 435 1 "3" }{TEXT -1 30 ". Find t he cyclic subgroup of " }{TEXT 436 1 "U" }{TEXT -1 23 "(145) generated by 19. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 438 1 "4" }{TEXT -1 30 ". Find the cyclic subgroup of " }{TEXT 439 2 "GL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[6];" "6#&%\"ZG6#\"\"'" }{TEXT -1 15 ") generated \+ by " }{XPPEDIT 18 0 "matrix([[2, 5], [1, 2]]);" "6#-%'matrixG6#7$7$\" \"#\"\"&7$\"\"\"F(" }{TEXT -1 3 " . " }}{PARA 14 "" 0 "" {TEXT -1 1 " \+ " }{TEXT 440 1 "5" }{TEXT -1 40 ". Find the order of cyclic subgroups \+ of " }{TEXT 464 2 "SL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[11];" "6#& %\"ZG6#\"#6" }{TEXT -1 6 ") and " }{TEXT 466 2 "SL" }{TEXT -1 4 "(2, \+ " }{XPPEDIT 18 0 "Z[12];" "6#&%\"ZG6#\"#7" }{TEXT -1 15 ") generated b y " }{XPPEDIT 18 0 "matrix([[1, 2], [3, 7]]);" "6#-%'matrixG6#7$7$\"\" \"\"\"#7$\"\"$\"\"(" }{TEXT -1 3 " . " }}{PARA 14 "" 0 "" {TEXT -1 1 " " }{TEXT 465 1 "6" }{TEXT -1 50 ". Find the centralizer of 3 in the d ihedral group " }{XPPEDIT 18 0 "D[6];" "6#&%\"DG6#\"\"'" }{TEXT -1 2 " . " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 468 1 "7" }{TEXT -1 28 ". \+ Find the centralizer of \{ " }{XPPEDIT 18 0 "matrix([[1, 3], [1, 2]]); " "6#-%'matrixG6#7$7$\"\"\"\"\"$7$F(\"\"#" }{TEXT -1 3 " , " } {XPPEDIT 18 0 "matrix([[1, 2], [3, 4]]);" "6#-%'matrixG6#7$7$\"\"\"\" \"#7$\"\"$\"\"%" }{TEXT -1 6 " \} in " }{TEXT 469 2 "GL" }{TEXT -1 4 " (2, " }{XPPEDIT 18 0 "Z[5];" "6#&%\"ZG6#\"\"&" }{TEXT -1 3 "). " }} {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 470 1 "8" }{TEXT -1 21 ". Find t he center of " }{TEXT 471 2 "SL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[ 6];" "6#&%\"ZG6#\"\"'" }{TEXT -1 3 "). " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 474 1 "9" }{TEXT -1 18 ". Test if the set " }{XPPEDIT 18 0 "\{1, 4, 11, 14, 16, 19, 26, 29, 31, 34, 41, 44\};" "6#<.\"\"\"\"\"% \"#6\"#9\"#;\"#>\"#E\"#H\"#J\"#M\"#T\"#W" }{TEXT -1 18 " is a subgroup of " }{TEXT 475 1 "U" }{TEXT -1 5 "(45)." }}}}}{SECT 0 {PARA 3 "" 0 " " {TEXT -1 16 "4. Cyclic Groups" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 15 "Primitive Roots" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 6 "Group " } {XPPEDIT 18 0 "Z[n]" "6#&%\"ZG6#%\"nG" }{TEXT -1 5 " has " }{XPPEDIT 18 0 "phi(n);" "6#-%$phiG6#%\"nG" }{TEXT -1 48 " generators. To find t hem, we can use procedure " }{TEXT 485 2 "un" }{TEXT -1 14 ". For exam ple," }{TEXT 486 2 " " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "un (20);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 18 "The generators of " } {TEXT 477 1 "U" }{TEXT -1 1 "(" }{TEXT 480 1 "n" }{TEXT -1 28 ") if th ey exist, are called " }{TEXT 478 15 "primitive roots" }{TEXT -1 5 " m od " }{TEXT 479 1 "n" }{TEXT -1 46 ". One of them can be found using t he function " }{TEXT 481 8 "primroot" }{TEXT -1 10 " from the " } {TEXT 482 9 "numtheory" }{TEXT -1 60 " package that we already loaded \+ in section 2. For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "primroot(43);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "It fails w hen the group " }{TEXT 483 1 "U" }{TEXT -1 1 "(" }{TEXT 484 1 "n" } {TEXT -1 62 ") is not cyclic, so it doesn't have a generator. For exam ple, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "primroot(45);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 59 "To find all generators, we can use the following procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 71 "primroots:=n->\{seq(primroot(n)^un(phi(n))[i] mod n, i=1..phi(phi( n)))\}:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "primroots(43);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "primroots(45);" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 28 "The number of generators of " }{TEXT 487 1 "U" } {TEXT -1 1 "(" }{TEXT 488 1 "n" }{TEXT -1 9 ") equals " }{XPPEDIT 18 0 "phi(phi(n));" "6#-%$phiG6#-F$6#%\"nG" }{TEXT -1 41 " when it is a c yclic group. For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "phi(phi(43));" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 18 "Elements o f Order " }{TEXT 489 1 "d" }{TEXT -1 1 " " }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 60 "Theorem 4.4 on p. 80 of Dr. Gallian's text tells us that \+ if " }{TEXT 542 1 "d" }{TEXT -1 26 " is a positive divisor of " } {TEXT 543 1 "n" }{TEXT -1 17 ", then there are " }{XPPEDIT 18 0 "phi(d );" "6#-%$phiG6#%\"dG" }{TEXT -1 19 " elements of order " }{TEXT 544 1 "d" }{TEXT -1 4 " in " }{XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6#%\"nG" } {TEXT -1 44 ". The following procedure lists all of them:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 71 "nordlist:=(d,n)->`if`(type(n/d,inte ger),map(x->x*n/d mod n,un(d)),[]): " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 49 "For example, the list of elements of order 20 in " }{XPPEDIT 18 0 "Z[100];" "6#&%\"ZG6#\"$+\"" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "nordlist(20,100);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 63 "The following procedure counts the number of elements of \+ order " }{TEXT 492 1 "d" }{TEXT -1 4 " in " }{TEXT 493 1 "U" }{TEXT -1 1 "(" }{TEXT 494 1 "n" }{TEXT -1 2 "):" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 109 "nordU:=proc(d,n) local i, k;\nk:=0; for i from 1 t o phi(n) do if order(un(n)[i],n)=d then k:=k+1 fi od; k end:" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "For example, the number of element s of order 2 in " }{TEXT 545 1 "U" }{TEXT -1 5 "(45):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "nordU(2,45);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "It immediately implies that " }{TEXT 495 1 "U" } {TEXT -1 164 "(45) is not a cyclic group, because a cyclic group might have either 0 elements of order 2 if it has an odd order, or 1 elemen t of order 2 if it has an even order. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 63 "The following procedure counts the number of elements of \+ order " }{TEXT 490 1 "d" }{TEXT -1 22 " in an extended group " }{TEXT 491 1 "G" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 110 "Nord:=proc(d,g) local i, k; \nk:=0; for i from 1 to nops(g[1]) do if Ord(g[1][i],g)=d then k:=k+1 fi od; k end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "For example, the number of elements of order 10 in \+ " }{TEXT 498 2 "SL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[5];" "6#&%\"Z G6#\"\"&" }{TEXT -1 2 "):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "Nord(10,SL2(5));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 12 "Notice th at " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "phi(10);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 23 "and 24 is divisible by " }{XPPEDIT 18 0 " phi(10) = 4;" "6#/-%$phiG6#\"#5\"\"%" }{TEXT -1 85 ", as it is suppose d to be according to the Corollary on p. 80 of Dr. Gallian's book. " } }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 61 "Another example, the number of e lements of order 2 in groups " }{TEXT 496 2 "GL" }{TEXT -1 4 "(2, " } {XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6#%\"nG" }{TEXT -1 6 ") for " }{TEXT 497 1 "n" }{TEXT -1 14 " from 2 to 6: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "for n from 2 to 6 do Nord(2,GL2(n)) od;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 29 "Try to find this sequence in " }{URLLINK 17 "Neil Sloane's On-Line Encyclopedia of Integer Sequences" 4 "http:/ /akpublic.research.att.com/~njas/sequences/" "" }{TEXT -1 166 ". Certa inly, for every specific group, one can write a program calculating th e number of elements of given order faster. For instance, for the elem ents of order 2 in " }{TEXT 499 2 "GL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6#%\"nG" }{TEXT -1 3 "), " }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 258 "ord2inGL2:=proc(n) local a,b,c,d,N; N:=0;\nfo r a from 0 to n-1 do for b from 0 to n-1 do for c from 0 to n-1 do for d from 0 to n-1 do \nif a^2+b*c mod n = 1 and b*(a+d) mod n = 0 and c *(a+d) mod n = 0 and d^2+b*c mod n =1\nthen N:=N+1 fi od od od od; N-1 end: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 52 "The following procedure lists the elements of order " }{TEXT 500 1 "d" }{TEXT -1 22 " in an e xtended group " }{TEXT 501 1 "G" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 126 "Nordlist:=proc(d,g) local i, v; v:=[];\nfor i from 1 to nops(g[1]) do if Ord(g[1][i],g)=d then v:=[op(v),g[1][i]] f i od; v end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 56 "For example, here is the list of elements of order 2 in " }{TEXT 502 2 "GL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[5];" "6#&%\"ZG6#\"\"&" }{TEXT -1 2 "):" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "map(matrix,Nordlist(2,GL2(5) ));" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 20 "Subgroup Lattice of " } {XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6#%\"nG" }{TEXT -1 0 "" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 46 "We have to load two packages for this section: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "with(plottools): with(n etworks):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 22 "A subgroup lattice o f " }{XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6#%\"nG" }{TEXT -1 44 " can be dra wn using the following procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 524 "subZ:=proc(n) local d,i,j,k,x,G,len,L,LL;\nnew(G); d :=divisors(n);\naddvertex(map(x->cat(`<`,x mod n,`>`),d),G); len:=a->a dd(ifactors(a)[2,i,2],i=1..nops(ifactors(a)[2]));\nL:=seq(convert(sele ct(a->evalb(len(a)=i),d),list),i=0..len(n));\nfor i from 1 to len(n) d o for j from 1 to nops(L[i]) do for k from 1 to nops(L[i+1]) do \nif L [i+1,k] mod L[i,j] = 0 then addedge(map(x->cat(`<`,x mod n,`>`),[L[i,j ],L[i+1,k]]),G) fi od od od;\nLL:=seq(map(x->cat(`<`,x mod n,`>`),L[i] ),i=1..len(n)+1); \nrotate(draw(Linear(LL),G),-Pi/2);\nend: " }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 17 "For example, for " }{TEXT 503 1 "n " }{TEXT -1 6 " = 30:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "sub Z(30);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 85 "It looks like a cube, d oesn't it? Even more after rotating the picture by 90 degrees:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "rotate(%,Pi/2);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 21 "Another example, for " }{TEXT 504 1 "n" } {TEXT -1 36 " = 210 (a 4-dimensional hypercube:-)" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 10 "subZ(210);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "Don't stop at that, draw a 5-dimensional hypercube!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "subZ(2310);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 23 "Number of subgroups of " }{XPPEDIT 18 0 "Z[n];" "6#& %\"ZG6#%\"nG" }{TEXT -1 34 " equals the number of divisors of " } {TEXT 505 1 "n" }{TEXT -1 44 ", which can be evaluated using the funct ion " }{TEXT 506 3 "tau" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "tau(30);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 " tau(210);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "tau(2310);" }} }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 10 "Exercises." }}{EXCHG {PARA 257 "" 0 "" {TEXT -1 0 "" }{TEXT 507 1 "1" }{TEXT 508 27 ". Find which of \+ the groups " }{TEXT -1 1 "U" }{TEXT 509 1 "(" }{TEXT -1 1 "n" }{TEXT 510 7 ") with " }{TEXT -1 1 "n" }{TEXT 511 61 " from 46 to 54 are cycl ic, and find the generators for them. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 538 1 "2" }{TEXT -1 49 ". Find the number of elements of the order 10 in " }{XPPEDIT 18 0 "Z[20];" "6#&%\"ZG6#\"#?" }{TEXT -1 23 " and list all of them. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 540 3 "3. " }{TEXT -1 46 "Find the number of elements of the order 2 in " }{TEXT 541 1 "U" }{TEXT -1 6 "(24). " }}{PARA 14 "" 0 "" {TEXT -1 0 " " }{TEXT 549 1 "4" }{TEXT -1 49 ". Find the number of elements of the \+ order 12 in " }{TEXT 550 2 "SL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[6 ];" "6#&%\"ZG6#\"\"'" }{TEXT -1 3 "). " }}{PARA 14 "" 0 "" {TEXT 551 1 "5" }{TEXT -1 48 ". Find the number of elements of the order 2 in " }{TEXT 546 2 "GL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6 #%\"nG" }{TEXT -1 6 ") for " }{TEXT 547 1 "n" }{TEXT -1 15 " from 7 to 20. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 553 1 "6" }{TEXT -1 38 ". List the elements of the order 3 in " }{TEXT 554 2 "SL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[3];" "6#&%\"ZG6#\"\"$" }{TEXT -1 3 "). " }} {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 557 1 "7" }{TEXT -1 28 ". Draw s ubgroup lattices of " }{XPPEDIT 18 0 "Z[8];" "6#&%\"ZG6#\"\")" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "Z[12];" "6#&%\"ZG6#\"#7" }{TEXT -1 2 ", " } {XPPEDIT 18 0 "Z[60];" "6#&%\"ZG6#\"#g" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "Z[100];" "6#&%\"ZG6#\"$+\"" }{TEXT -1 2 ". " }}}}}{SECT 0 {PARA 3 "" 0 "" {TEXT -1 29 "Supplement for Chapters 1 - 4" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 37 "Subgroups Generated by a Few Elements" }} {EXCHG {PARA 0 "" 0 "" {TEXT -1 30 "We already have the procedure " } {TEXT 558 6 "cycleU" }{TEXT -1 46 " listing the elements of a cyclic s ubgroup of " }{TEXT 559 1 "U" }{TEXT -1 1 "(" }{TEXT 560 1 "n" }{TEXT -1 61 "). Here is the procedure finding elements of the subgroup of " }{TEXT 561 1 "U" }{TEXT -1 1 "(" }{TEXT 563 1 "n" }{TEXT -1 21 "), gen erated by a set" }{TEXT 564 2 " s" }{TEXT -1 16 " of elements of " } {TEXT 562 1 "U" }{TEXT -1 1 "(" }{TEXT 565 1 "n" }{TEXT -1 3 "): " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 194 "genU:=proc(s,n) local i,j,v ,vs; \nv:=\{1\}; vs:=\{op(s)\} union \{1\}; \nwhile not v=vs do v:=vs; for i from 1 to nops(v) do for j from 1 to nops(s) do \nvs:=vs union \{v[i]*s[j] mod n\} od od od; v end: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 37 "For example, here is the subgroup of " }{TEXT 590 1 "U" } {TEXT -1 26 "(48) generated by 5 and 7:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "genU(\{5,7\},48);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "un(48);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 70 "For a \+ comparison, here are the cyclic subgroups generated by 5 and 7: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "cycleU(5,48);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "cycleU(7,48);" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 53 "Here is the analog ous procedure for extended groups: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 210 "Gen:=proc(s,g) local i,j,v,vs; \nv:=\{g[3]\}; vs:=\{ op(s)\} union v; \nwhile not v=vs do v:=vs; for i from 1 to nops(v) do for j from 1 to nops(s) do \nvs:=vs union \{g[2](v[i],s[j]), g[2](s[ j],v[i])\} od od od; v end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 4 "For " }{XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6#%\"nG" }{TEXT -1 76 ",we don't ac tually need such a procedure, because the subgroup generated by " } {TEXT 569 4 "s = " }{TEXT -1 1 "\{" }{TEXT 566 12 "a, b, ..., c" } {TEXT -1 41 "\} is just a cyclic subgroup generated by " }{TEXT 567 4 "igcd" }{TEXT -1 0 "" }{TEXT 568 9 "( op(s) )" }{TEXT -1 30 ". Let's s ee what we get using " }{TEXT 570 3 "Gen" }{TEXT -1 2 ": " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "Gen(\{4,6\},Z(12));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 77 "The same answer! Now, something a little \+ bit more complicated, a subgroup of " }{TEXT 572 2 "SL" }{TEXT -1 4 "( 2, " }{XPPEDIT 18 0 "Z[3];" "6#&%\"ZG6#\"\"$" }{TEXT -1 15 ") generate d by " }{XPPEDIT 18 0 "matrix([[1, 1], [0, 1]]);" "6#-%'matrixG6#7$7$ \"\"\"F(7$\"\"!F(" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "matrix([[0, 1], [2, 0]]);" "6#-%'matrixG6#7$7$\"\"!\"\"\"7$\"\"#F(" }{TEXT -1 3 " : \+ " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "map(matrix,Gen(\{[[1,1] ,[0,1]],[[0,1],[2,0]]\},GL2(3)));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 14 "It looks like " }{TEXT 571 2 "SL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[3];" "6#&%\"ZG6#\"\"$" }{TEXT -1 23 "). Let's check it out: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "evalb(Gen(\{[[1,1],[0,1]],[[ 0,1],[2,0]]\},GL2(3))=\{op(sl2(3))\});" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 36 "Intersections and Products of Groups" }}{EXCHG {PARA 0 " " 0 "" {TEXT -1 154 "Some exercises in Dr. Gallian's text are using in tersections of subgroups and a product of groups. The intersections ca n be found using the Maple command " }{TEXT 574 9 "intersect" }{TEXT -1 48 ". For example, the intersection of subgroups of " }{TEXT 575 1 "U" }{TEXT -1 36 "(48) generated by \{5,7\} and \{9,25\}: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "genU(\{5,7\},48) intersect genU(\{9 ,25\},48);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 57 "Another example, th e intersection of cyclic subgroups of " }{XPPEDIT 18 0 "Z[120];" "6#&% \"ZG6#\"$?\"" }{TEXT -1 30 " generated by 4, 6, and 25. : " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 85 "`intersect`(\{op(Cycle(4, Z(120))) \}, \{op(Cycle(6, Z(120)))\}, \{op(Cycle(25, Z(120)))\});" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 34 "It must be the cyclic subgroup of " } {XPPEDIT 18 0 "Z[120];" "6#&%\"ZG6#\"$?\"" }{TEXT -1 65 " generated by the least common multiple of 4, 6, and 25 mod 120: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "Cycle(ilcm(4,6,25) mod 120, Z(120));" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 78 "Now, define the product of the ext ended groups using the following procedure: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 195 "`&x`:=proc(g,h) local m,i; \nm:=(a,b)->[g[2](a[ 1],b[1]),h[2](a[2],b[2])];\ni:=a->[g[4](a[1]),h[4](a[2])]; \n[[seq(seq ([g[1][i],h[1][j]],j=1..nops(h[1])),i=1..nops(g[1]))], \nm, [g[3],h[3] ], i] end: " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "For example, the \+ product of " }{XPPEDIT 18 0 "Z[5];" "6#&%\"ZG6#\"\"&" }{TEXT -1 5 " an d " }{XPPEDIT 18 0 "Z[7];" "6#&%\"ZG6#\"\"(" }{TEXT -1 2 ": " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "A:=Z(5) &x Z(7):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 33 "Check if it is an extended group:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "type(A, extendedGroup);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 21 "Find the order of it:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "nops(A[1]);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 60 "We can use it to find products of three or more grou ps, too:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "B:=Z(2) &x Z(2) &x GL2(2):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "type(B, exte ndedGroup);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "nops(B[1]); " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "Here is the identity of it: \+ " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "B[3];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 15 "It looks as if " }{TEXT 576 1 "B" }{TEXT -1 96 " equals the product of the first two groups multiplied by the third g roup. Check if it is true: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "evalb( B[1] = ((Z(2) &x Z(2)) &x GL2(2))[1] );" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 18 "Is a Group Cyclic?" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 62 "The following procedure is checking whether an extended g roup " }{TEXT 577 1 "G" }{TEXT -1 12 " is cyclic: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 152 "IsCyclic:=proc(g) local v;\nv:=\{op(g[1]) \}; while not nops(v)=0 and not Ord(v[1],g)=nops(g[1]) do v:=v minus \+ \{op(Cycle(v[1],g))\} od; not evalb(v=\{\}) end: " }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 24 "Here are a few examples:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "IsCyclic(Z(1));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "IsCyclic(Cyclic(25));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "IsCyclic(Dihedral(12));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "IsCyclic(Un(48));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "IsCyclic(Un(49));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "IsCyclic(Z(4) &x Z(6));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "IsCyclic(Z(4) &x Z(5));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "If a group is cyclic, the following procedure finds its g enerators: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 242 "Generators: =proc(g) local v,n; n:=nops(g[1]); if n=1 then g[3] else \nv:=\{op(g[1 ])\}; while not nops(v)=0 and not Ord(v[1],g)=n do v:=v minus \{op(Cyc le(v[1],g))\} od; if v=\{\} then FAIL else \{seq(Cycle(v[1],g)[un(n)[i ]+1],i=1..phi(n))\} fi fi end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "Generator s(Un(49));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "Generators(Z( 4) &x Z(5));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "Generators( Un(48));" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 33 "Normalizers and Con jugacy Classes" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 290 "\"Normalizer\" \+ is an environment variable in Maple, so we should use another term for the normalizer of a subgroup. I chose to use \"normalizer\" even if i t contradicts the agreement of using capital letters for commands rela ted to the extended groups. First we have to define conjugate groups: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "Conjugate:=(x,h,g)->map (y->g[2](g[2](x,y),g[4](x)),h): " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 23 "For example, the group " }{XPPEDIT 18 0 "x*H*x^`-1`;" "6#*(%\"xG\" \"\"%\"HGF%)F$%#-1GF%" }{TEXT -1 27 " conjugate to the subgroup " } {TEXT 578 1 "H" }{TEXT -1 4 " of " }{XPPEDIT 18 0 "D[3];" "6#&%\"DG6# \"\"$" }{TEXT -1 35 " generated by the 6th element, for " }{TEXT 579 1 "x" }{TEXT -1 8 " = 2, is" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "Conjugate(2,[1,6],Dihedral(3));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 54 "Now we define normalizers by the following procedure: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 73 "normalizer:=(h,g)->select(x- >evalb(\{op(Conjugate(x,h,g))\}=\{op(h)\}),g[1]):" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 54 "For example, the normalizer of the cyclic subgroup of " }{TEXT 580 2 "GL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[3];" "6#& %\"ZG6#\"\"$" }{TEXT -1 15 ") generated by " }{XPPEDIT 18 0 "matrix([[ 1, 1], [0, 1]]);" "6#-%'matrixG6#7$7$\"\"\"F(7$\"\"!F(" }{TEXT -1 3 " \+ : " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 59 "map(matrix,normalizer (Cycle([[1,1],[0,1]],GL2(3)),GL2(3)));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 79 "Conjugacy classes can be defined as follows (also without the capitalization): " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "c l:=(a,g)->\{seq(g[2](g[2](g[1][i],a),g[4](g[1][i])),i=1..nops(g[1]))\} :" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 55 "For example, the conjugacy c lass of the 6th element of " }{XPPEDIT 18 0 "D[3];" "6#&%\"DG6#\"\"$" }{TEXT -1 2 ": " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "cl(6,Dih edral(3));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 40 "Another example, th e conjugacy class of " }{XPPEDIT 18 0 "matrix([[1, 1], [0, 1]])" "6#-% 'matrixG6#7$7$\"\"\"F(7$\"\"!F(" }{TEXT -1 4 " in " }{TEXT 581 2 "GL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[3];" "6#&%\"ZG6#\"\"$" }{TEXT -1 2 "):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "map(matrix,cl([[1, 1],[0,1]],GL2(3)));" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 20 "Group of Quaternions" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 143 "All the groups of order less than 12 are either groups in our list of extended groups, \+ or their products, except the group of quaternions, see " }{URLLINK 17 "Finite Groups" 4 "http://mathworld.wolfram.com/FiniteGroup.html" " " }{TEXT -1 73 " article at MathWorld, for example. We will add the gr oup of quaternions " }{XPPEDIT 18 0 "Q[8];" "6#&%\"QG6#\"\")" }{TEXT -1 171 " to our list. It is a non-Abelian group of order 8 having 1 el ement of order 1 (the identity), 1 element of order 2 (negative 1), an d 6 elements of order 4 (plus or minus " }{TEXT 582 7 "i, j, k" } {TEXT -1 51 "). There are only 2 non-Abelian groups of order 8, " } {XPPEDIT 18 0 "Q[8]" "6#&%\"QG6#\"\")" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "D[4];" "6#&%\"DG6#\"\"%" }{TEXT -1 21 ". The dihedral group " } {XPPEDIT 18 0 "D[4]" "6#&%\"DG6#\"\"%" }{TEXT -1 379 " has only 2 elem ents of order 4, the rotations by 90 degrees and 270 degrees. Its oth er elements have degrees either 1 (identity), or 2 (the reflections an d the rotation by 180 degrees). Thus, if we find a non-Abelian group o f order 8 having more than 2 elements of order 4, it will be the group of quaternions. Try to find it among the subgroups of the groups we a lready know. " }{TEXT 583 3 "GL2" }{TEXT -1 3 "(2," }{TEXT 589 1 " " } {XPPEDIT 18 0 "Z[2];" "6#&%\"ZG6#\"\"#" }{TEXT -1 26 ") is too small t o contain " }{XPPEDIT 18 0 "Q[8]" "6#&%\"QG6#\"\")" }{TEXT -1 76 " as \+ a subgroup, it has only 6 elements. Try the next smallest groups in th e " }{TEXT 585 2 "GL" }{TEXT -1 5 " and " }{TEXT 586 2 "SL" }{TEXT -1 7 " series" }{TEXT 587 1 "," }{TEXT -1 1 " " }{TEXT 584 2 "SL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[3];" "6#&%\"ZG6#\"\"$" }{TEXT -1 39 "). \+ First, find its elements of order 4:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "Q:=Nordlist(4,SL2(3)):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "map(matrix,Q);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 104 "Exactly 6 elements. If the group generated by them has 8 elements , then it is the group of quaternions. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "map(matrix,Gen(Q,SL2(3)));" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 85 "8 elements, so it is the group of quaternions. Let's ma ke an extended group from it: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 91 "Q8inSL:=[[[[1,0],[0,1]],[[2,0],[0,2]],op(Q)],(a,b)->mm(a,b,3), [[1,0],[0,1]],a->invSL(a,3)]:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 75 " We also need a function converting the matrices, or lists, to the stan dard " }{TEXT 588 8 "i, j, k " }{TEXT -1 27 " expressions. Let's do it : " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 142 "quat([[1,0],[0,1]]): =1: quat([[2,0],[0,2]]):=-1: quat(Q[1]):=i: quat(Q[2]):=j: \nquat(Q[3] ):=-k: quat(Q[4]):=-i: quat(Q[5]):=k: quat(Q[6]):=-j:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 48 "We will also need the backward conversion , from " }{TEXT 591 7 "i, j, k" }{TEXT -1 15 " to the lists: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 150 "qback(1):=[[1,0],[0,1]]: qb ack(-1):=[[2,0],[0,2]]: qback(i):=Q[1]: qback(j):=Q[2]: \nqback(-k):=Q [3]: qback(-i):=Q[4]: qback(k):=Q[5]: qback(-j):=Q[6]:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 53 "Now we can redefine the quaternion group \+ in terms of " }{TEXT 592 1 "i" }{TEXT -1 2 ", " }{TEXT 593 1 "j" } {TEXT -1 6 ", and " }{TEXT 594 1 "k" }{TEXT -1 2 ": " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 100 "Q8:=[map(quat,Q8inSL[1]),(a,b)->quat(Q8i nSL[2](qback(a),qback(b))),1,a->quat(Q8inSL[4](qback(a)))]: " }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "For example, " }{MPLTEXT 1 0 1 " \011" }{TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "Cent er(Q8);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "cl(i,Q8);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "Cycle(i,Q8);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 115 "Certainly, we could define the group of quaternions directly f rom its Cayley table on p. 89 of Dr. Gallian's text. " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Exercises" }}{EXCHG {PARA 14 "" 0 "" {TEXT 595 1 "1" }{TEXT -1 23 ". Find the subgroup of " }{TEXT 596 1 "U " }{TEXT -1 27 "(96) generated by 5 and 7. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 599 1 "2" }{TEXT -1 23 ". Find the subgroup of " } {TEXT 600 2 "GL" }{TEXT -1 4 "(2, " }{XPPEDIT 18 0 "Z[4];" "6#&%\"ZG6# \"\"%" }{TEXT -1 15 ") generated by " }{XPPEDIT 18 0 "matrix([[0, 1], \+ [1, 2]]);" "6#-%'matrixG6#7$7$\"\"!\"\"\"7$F)\"\"#" }{TEXT -1 5 " and \+ " }{XPPEDIT 18 0 "matrix([[1, 0], [0, 3]]);" "6#-%'matrixG6#7$7$\"\"\" \"\"!7$F)\"\"$" }{TEXT -1 3 " . " }}}}}{SECT 0 {PARA 3 "" 0 "" {TEXT -1 16 "Selected Answers" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 24 "An Int roduction to Maple" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 272 1 "1" }{TEXT -1 16 ". Find/Replace. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 273 1 "2" }{TEXT -1 7 ". Yes. " }}{PARA 14 "" 0 "" {TEXT 274 1 "3" }{TEXT -1 14 ". Shift+Enter." }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 16 "0. Preliminaries" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 " " }{TEXT 279 4 "1. " }{XPPEDIT 18 0 "``(2)*``(41)*``(6145992651282650 0975801)*``(18055139801)*``(42521761)*``(133201);" "6#*.-%!G6#\"\"#\" \"\"-F%6#\"#TF(-F%6#\"8,e(4]EG^E*f9'F(-F%6#\",,)R^0=F(-F%6#\")h<_UF(-F %6#\"',K8F(" }{TEXT -1 1 "." }}}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 281 3 "2. " }{XPPEDIT 18 0 "12345;" "6#\"&XB\"" }{TEXT -1 5 " a nd " }{XPPEDIT 18 0 "785064327644945684970;" "6#\"6q\\oX\\kFV1&y" } {TEXT -1 2 ". " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 282 1 "3" } {TEXT -1 2 ". " }{XPPEDIT 18 0 "\{x = 28+47*_Z1, y = 25+42*_Z1\};" "6# <$/%\"xG,&\"#G\"\"\"*&\"#ZF(%$_Z1GF(F(/%\"yG,&\"#DF(*&\"#UF(F+F(F(" } {TEXT -1 1 "." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 285 1 "4" } {TEXT -1 4 ". 8." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 288 1 "5" } {TEXT -1 2 ". " }{XPPEDIT 18 0 "1/10*n^10+1/2*n^9+3/4*n^8-7/10*n^6+1/2 *n^4-3/20*n^2;" "6#,.*(\"\"\"F%\"#5!\"\"%\"nGF&F%*(F%F%\"\"#F'F(\"\"*F %*(\"\"$F%\"\"%F'F(\"\")F%*(\"\"(F%F&F'F(\"\"'F'*(F%F%F*F'F(F.F%*(F-F% \"#?F'F(F*F'" }{TEXT -1 1 "." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 290 1 "6" }{TEXT -1 2 ". " }{XPPEDIT 18 0 "n^4-n+3;" "6#,(*$%\"nG\"\"% \"\"\"F%!\"\"\"\"$F'" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "2397;" "6#\" %(R#" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "4091;" "6#\"%\"4%" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "6555;" "6#\"%bl" }{TEXT -1 2 ", " }{XPPEDIT 18 0 "9993;" "6#\"%$***" }{TEXT -1 2 ". " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 25 "1. Introduction to Groups" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 303 1 "1" }{TEXT -1 18 ". The elements of " } {XPPEDIT 18 0 "D[3];" "6#&%\"DG6#\"\"$" }{TEXT -1 1 ":" }}{PARA 14 "" 0 "" {TEXT -1 1 " " }{GLPLOT2D 400 300 300 {PLOTDATA 2 "6U-%)POLYGONSG 6/7%7$$\"++++]>!\")$!+'fuR8$!\"*7$F($!+/a-m[F-7$$\"#@\"\"!$!\"%F47%7$$ \"+++++&*F-$!+'fuR8(F-7$F9$!+/a-m))F-7$$\"#6F4$F*F47%7$F(F;7$F(F>7$F2F C7%7$F9$!+guR86F*7$F9$!+SDg'G\"F*7$FA$!#7F47%7$F(FJ7$F(FM7$F2FP7%7$$\" +++++9F*F+7$FXF/7$$\"$b\"!\"\"F57%7$$\"+++++CF*F+7$F[oF/7$$\"$b#FhnF57 %7$FXF;7$FXF>7$FfnFC7%7$F[oF;7$F[oF>7$F_oFC7%7$FXFJ7$FXFM7$FfnFP7%7$F[ oFJ7$F[oFM7$F_oFP7%7$F9F+7$F9F/7$FAF5-%'COLOURG6&%$RGBG$\")p:#R%F*$\") `B)e)F*$\")fqkdF*-%'CURVESG6&7$7$$\"$;\"FhnF57$$\"$G\"FhnF57%7$$\"++++ c7F*$!++++SRF-Ffq7$F[r$!++++gSF--%&STYLEG6#%,PATCHNOGRIDG-Ffp6&Fhp$F4F 4Fhr$\"*++++\"F*-F`q6&7$7$$\"$;#FhnF57$$\"$G#FhnF57%7$$\"++++cAF*F]rFa s7$FfsF`rFbrFfr-F`q6&7$7$FdqFC7$FgqFC7%7$F[r$!++++SzF-F]t7$F[r$!++++g! )F-FbrFfr-F`q6&7$7$F_sFC7$FbsFC7%7$FfsF`tFit7$FfsFctFbrFfr-F`q6&7$7$Fd qFP7$FgqFP7%7$F[r$!++++%>\"F*Fau7$F[r$!++++17F*FbrFfr-F`q6&7$7$F_sFP7$ FbsFP7%7$FfsFduF]v7$FfsFguFbrFfr-%%TEXTG6%7$$\"$9\"FhnF5Q\"16\"-Ffp6&F hpFirFhrFhr-Fbv6%7$$\"+++++$*F-$!+MWc(y#F-Q\"2FhvFiv-Fbv6%7$F^w$!+mbV7 _F-Q\"3FhvFiv-Fbv6%7$$\"$9#FhnF5FgvFiv-Fbv6%7$$\"++++I>F*F`wFbwFiv-Fbv 6%7$FaxFfwFhwFiv-Fbv6%7$FevFCFgvFiv-Fbv6%7$F^w$!+MWc(y'F-FbwFiv-Fbv6%7 $F^w$!+mbV7#*F-FhwFiv-Fbv6%7$F\\xFCFgvFiv-Fbv6%7$FaxF\\yFbwFiv-Fbv6%7$ FaxFayFhwFiv-Fbv6%7$FevFPFgvFiv-Fbv6%7$F^w$!+Vkvy5F*FbwFiv-Fbv6%7$F^w$ !+dNC@8F*FhwFiv-Fbv6%7$F\\xFPFgvFiv-Fbv6%7$FaxFbzFbwFiv-Fbv6%7$FaxFgzF hwFiv-Fbv6%7$$\"$f\"FhnF5FgvFiv-Fbv6%7$$\"++++!Q\"F*F`wFbwFiv-Fbv6%7$F j[lFfwFhwFiv-Fbv6%7$$\"$f#FhnF5FhwFiv-Fbv6%7$$\"++++!Q#F*F`wFgvFiv-Fbv 6%7$Fg\\lFfwFbwFiv-Fbv6%7$Fe[lFCFbwFiv-Fbv6%7$Fj[lF\\yFhwFiv-Fbv6%7$Fj [lFayFgvFiv-Fbv6%7$Fb\\lFCFhwFiv-Fbv6%7$Fg\\lF\\yFbwFiv-Fbv6%7$Fg\\lFa yFgvFiv-Fbv6%7$Fe[lFPFbwFiv-Fbv6%7$Fj[lFbzFgvFiv-Fbv6%7$Fj[lFgzFhwFiv- Fbv6%7$Fb\\lFPFgvFiv-Fbv6%7$Fg\\lFbzFhwFiv-Fbv6%7$Fg\\lFgzFbwFiv-Fbv6% 7$$\"$A\"Fhn$!#NFhnFgvFfr-Fbv6%7$$\"$A#FhnFe_lFbwFfr-Fbv6%7$Fc_l$!#vFh nFhwFfr-Fbv6%7$Fj_lF_`lQ\"4FhvFfr-Fbv6%7$Fc_l$!$:\"FhnQ\"5FhvFfr-Fbv6% 7$Fj_lFh`lQ\"6FhvFfr-%(SCALINGG6#%,CONSTRAINEDG-%*AXESSTYLEG6#%%NONEG " 1 2 0 1 10 0 2 9 1 1 1 1.000000 45.000000 45.000000 0 0 "Curve 1" "C urve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "C urve 9" "Curve 10" "Curve 11" "Curve 12" "Curve 13" "Curve 14" "Curve \+ 15" "Curve 16" "Curve 17" "Curve 18" "Curve 19" "Curve 20" "Curve 21" "Curve 22" "Curve 23" "Curve 24" "Curve 25" "Curve 26" "Curve 27" "Cur ve 28" "Curve 29" "Curve 30" "Curve 31" "Curve 32" "Curve 33" "Curve 3 4" "Curve 35" "Curve 36" "Curve 37" "Curve 38" "Curve 39" "Curve 40" " Curve 41" "Curve 42" "Curve 43" "Curve 44" "Curve 45" "Curve 46" "Curv e 47" "Curve 48" "Curve 49" }}}{PARA 14 "" 0 "" {TEXT -1 16 "The eleme nts of " }{XPPEDIT 18 0 "C[6];" "6#&%\"CG6#\"\"'" }{TEXT -1 1 ":" }} {PARA 14 "" 0 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6cp-%)POLYGONSG6/7 (7$$\"+++++:!\")$!+guR86F*7$$\"+++++9F*F+7$$\"$N\"!\"\"$!#7\"\"!7$F.$! +SDg'G\"F*7$F(F87$$\"$b\"F3F47(7$$\"+++++DF*F+7$$\"+++++CF*F+7$$\"$N#F 3F47$FCF87$F@F87$$\"$b#F3F47(7$$\"++++]?F*$!+'fuR8$!\"*7$$\"++++]>F*FQ 7$$\"#>F6$!\"%F67$FU$!+/a-m[FS7$FOFgn7$$\"#@F6FZ7(7$FOF+7$FUF+7$FXF47$ FUF87$FOF87$F[oF47(7$$\"++++]5F*$!+'fuR8(FS7$$\"+++++&*FSFho7$$\"\"*F6 $F*F67$F[p$!+/a-m))FS7$FfoFbp7$$\"#6F6F`p7(7$F(FQ7$F.FQ7$F1FZ7$F.Fgn7$ F(Fgn7$F\"F*Fex7$F_u$!++ ++17F*FfuFju-Fdt6&7$7$FcvF47$FfvF47%7$FjvFhxFay7$FjvF[yFfuFju-%%TEXTG6 %7$$\"$9\"F3FZQ\"16\"-Fjs6&F\\tF]vF\\vF\\v-Ffy6%7$$\"++++q5F*$!+MWc(y# FSQ\"2F\\zF]z-Ffy6%7$$\"+++++$*FSFdzQ\"3F\\zF]z-Ffy6%7$$\"#')F3FZQ\"4F \\zF]z-Ffy6%7$Fjz$!+mbV7_FSQ\"5F\\zF]z-Ffy6%7$FbzFf[lQ\"6F\\zF]z-Ffy6% 7$$\"$9#F3FZF[zF]z-Ffy6%7$$\"++++q?F*FdzFfzF]z-Ffy6%7$$\"++++I>F*FdzF \\[lF]z-Ffy6%7$$\"$'=F3FZFb[lF]z-Ffy6%7$Fj\\lFf[lFh[lF]z-Ffy6%7$Fe\\lF f[lF\\\\lF]z-Ffy6%7$FiyF`pF[zF]z-Ffy6%7$Fbz$!+MWc(y'FSFfzF]z-Ffy6%7$Fj zF]^lF\\[lF]z-Ffy6%7$F`[lF`pFb[lF]z-Ffy6%7$Fjz$!+mbV7#*FSFh[lF]z-Ffy6% 7$FbzFh^lF\\\\lF]z-Ffy6%7$F`\\lF`pF[zF]z-Ffy6%7$Fe\\lF]^lFfzF]z-Ffy6%7 $Fj\\lF]^lF\\[lF]z-Ffy6%7$F_]lF`pFb[lF]z-Ffy6%7$Fj\\lFh^lFh[lF]z-Ffy6% 7$Fe\\lFh^lF\\\\lF]z-Ffy6%7$FiyF4F[zF]z-Ffy6%7$Fbz$!+Vkvy5F*FfzF]z-Ffy 6%7$FjzFe`lF\\[lF]z-Ffy6%7$F`[lF4Fb[lF]z-Ffy6%7$Fjz$!+dNC@8F*Fh[lF]z-F fy6%7$FbzF`alF\\\\lF]z-Ffy6%7$F`\\lF4F[zF]z-Ffy6%7$Fe\\lFe`lFfzF]z-Ffy 6%7$Fj\\lFe`lF\\[lF]z-Ffy6%7$F_]lF4Fb[lF]z-Ffy6%7$Fj\\lF`alFh[lF]z-Ffy 6%7$Fe\\lF`alF\\\\lF]z-Ffy6%7$$\"$f\"F3FZF[zF]z-Ffy6%7$$\"++++?:F*FdzF fzF]z-Ffy6%7$$\"++++!Q\"F*FdzF\\[lF]z-Ffy6%7$$\"$J\"F3FZFb[lF]z-Ffy6%7 $FdclFf[lFh[lF]z-Ffy6%7$F_clFf[lF\\\\lF]z-Ffy6%7$$\"$f#F3FZF\\\\lF]z-F fy6%7$$\"++++?DF*FdzF[zF]z-Ffy6%7$$\"++++!Q#F*FdzFfzF]z-Ffy6%7$$\"$J#F 3FZF\\[lF]z-Ffy6%7$F^elFf[lFb[lF]z-Ffy6%7$FidlFf[lFh[lF]z-Ffy6%7$FjblF `pFh[lF]z-Ffy6%7$F_clF]^lF\\\\lF]z-Ffy6%7$FdclF]^lF[zF]z-Ffy6%7$FiclF` pFfzF]z-Ffy6%7$FdclFh^lF\\[lF]z-Ffy6%7$F_clFh^lFb[lF]z-Ffy6%7$FddlF`pF b[lF]z-Ffy6%7$FidlF]^lFh[lF]z-Ffy6%7$F^elF]^lF\\\\lF]z-Ffy6%7$FcelF`pF [zF]z-Ffy6%7$F^elFh^lFfzF]z-Ffy6%7$FidlFh^lF\\[lF]z-Ffy6%7$FjblF4F\\[l F]z-Ffy6%7$F_clFe`lFb[lF]z-Ffy6%7$FdclFe`lFh[lF]z-Ffy6%7$FiclF4F\\\\lF ]z-Ffy6%7$FdclF`alF[zF]z-Ffy6%7$F_clF`alFfzF]z-Ffy6%7$FddlF4FfzF]z-Ffy 6%7$FidlFe`lF\\[lF]z-Ffy6%7$F^elFe`lFb[lF]z-Ffy6%7$FcelF4Fh[lF]z-Ffy6% 7$F^elF`alF\\\\lF]z-Ffy6%7$FidlF`alF[zF]z-Ffy6%7$$\"$A\"F3$!#NF3F[zFju -Ffy6%7$$\"$A#F3FhjlFfzFju-Ffy6%7$Ffjl$!#vF3F\\[lFju-Ffy6%7$F][mFb[mFb [lFju-Ffy6%7$Ffjl$!$:\"F3Fh[lFju-Ffy6%7$F][mFj[mF\\\\lFju-%(SCALINGG6# %,CONSTRAINEDG-%*AXESSTYLEG6#%%NONEG" 1 2 0 1 10 0 2 9 1 1 1 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curve 10" "Curve 11" "Cur ve 12" "Curve 13" "Curve 14" "Curve 15" "Curve 16" "Curve 17" "Curve 1 8" "Curve 19" "Curve 20" "Curve 21" "Curve 22" "Curve 23" "Curve 24" " Curve 25" "Curve 26" "Curve 27" "Curve 28" "Curve 29" "Curve 30" "Curv e 31" "Curve 32" "Curve 33" "Curve 34" "Curve 35" "Curve 36" "Curve 37 " "Curve 38" "Curve 39" "Curve 40" "Curve 41" "Curve 42" "Curve 43" "C urve 44" "Curve 45" "Curve 46" "Curve 47" "Curve 48" "Curve 49" "Curve 50" "Curve 51" "Curve 52" "Curve 53" "Curve 54" "Curve 55" "Curve 56 " "Curve 57" "Curve 58" "Curve 59" "Curve 60" "Curve 61" "Curve 62" "C urve 63" "Curve 64" "Curve 65" "Curve 66" "Curve 67" "Curve 68" "Curve 69" "Curve 70" "Curve 71" "Curve 72" "Curve 73" "Curve 74" "Curve 75 " "Curve 76" "Curve 77" "Curve 78" "Curve 79" "Curve 80" "Curve 81" "C urve 82" "Curve 83" "Curve 84" "Curve 85" }}{TEXT -1 0 "" }}{PARA 14 " " 0 "" {TEXT -1 0 "" }{TEXT 313 1 "2" }{TEXT -1 22 ". The 15th element of " }{XPPEDIT 18 0 "D[24];" "6#&%\"DG6#\"#C" }{TEXT -1 1 ":" }} {PARA 14 "" 0 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6W-%)POLYGONSG6%7: 7$$\"+$e#f'4\"!\")$!+b4=TP!\"*7$$\"+SDg'3\"F*$!+++++NF-7$$\"+y1rq5F*$! +>K*GH$F-7$$\"++++]5F*$!+'fuR8$F-7$$\"+0>)e-\"F*$!+uT2MIF-7$$\"#5\"\"! $!\"$FE7$$\"+b4=T(*F-F@7$$\"+++++&*F-F;7$$\"+>K*GH*F-F67$$\"+'fuR8*F-F 17$$\"+uT2M!*F-F+7$$\"\"*FE$!\"%FE7$FU$!+X!>)eUF-7$FR$!+++++XF-7$FO$!+ \"y1rq%F-7$FL$!+/a-m[F-7$FI$!+Ee#f'\\F-7$FC$!\"&FE7$F>Fco7$F9F`o7$F4F] o7$F/Fjn7$F(Fgn7$$\"#6FEFZ7:7$$\"+$e#fY:F*F+7$$\"+SDgO:F*F17$$\"+y1r?: F*F67$$\"+++++:F*F;7$$\"+0>)eZ\"F*F@7$$\"$X\"!\"\"FF7$$\"+&4=TU\"F*F@7 $$\"+++++9F*F;7$$\"+A$*Gz8F*F67$$\"+guRj8F*F17$$\"+\"#?\"#@\"#A\"#B\"#C\"\"\"\"\"#\"\"$\"\"%\"\"&\"\"' \"\"(\"\")\"\"*\"#5\"#6\"#7\"#8\"#9" }{TEXT 320 4 " . " }}{PARA 14 " " 0 "" {TEXT -1 0 "" }{TEXT 314 1 "4" }{TEXT -1 21 ". The Cayley table of" }{TEXT 311 1 " " }{XPPEDIT 18 0 "D[3];" "6#&%\"DG6#\"\"$" }{TEXT -1 1 ":" }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "RTABLE(18189796,MATRIX([[1, 2, 3, 4, 5, 6], [2, 3, 1, 6, 4, 5], [3, 1, 2, 5, 6, 4], [4, 5, 6, 1, \+ 2, 3], [5, 6, 4, 3, 1, 2], [6, 4, 5, 2, 3, 1]]));" "6#-%'RTABLEG6$\")' z*==-%'MATRIXG6#7(7(\"\"\"\"\"#\"\"$\"\"%\"\"&\"\"'7(F-F.F,F1F/F07(F.F ,F-F0F1F/7(F/F0F1F,F-F.7(F0F1F/F.F,F-7(F1F/F0F-F.F," }{TEXT -1 0 "" }} {PARA 14 "" 0 "" {TEXT -1 20 "The Cayley table of " }{XPPEDIT 18 0 "C[ 3];" "6#&%\"CG6#\"\"$" }{TEXT -1 1 ":" }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "RTABLE(18988324,MATRIX([[1, 2, 3, 4, 5, 6], [2, 3, 4, 5, 6, 1], [3, 4, 5, 6, 1, 2], [4, 5, 6, 1, 2, 3], [5, 6, 1, 2, 3, 4], [6, 1, 2, 3, \+ 4, 5]]));" "6#-%'RTABLEG6$\")C$))*=-%'MATRIXG6#7(7(\"\"\"\"\"#\"\"$\" \"%\"\"&\"\"'7(F-F.F/F0F1F,7(F.F/F0F1F,F-7(F/F0F1F,F-F.7(F0F1F,F-F.F/7 (F1F,F-F.F/F0" }{TEXT -1 1 " " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "C[3]; " "6#&%\"CG6#\"\"$" }{TEXT -1 13 " is Abelian, " }{XPPEDIT 18 0 "D[3]; " "6#&%\"DG6#\"\"$" }{TEXT -1 9 " is not. " }}{PARA 14 "" 0 "" {TEXT 316 1 "5" }{TEXT -1 6 ". The " }{TEXT 315 0 "" }{XPPEDIT 18 0 "a*b*a^` -1`" "6#*(%\"aG\"\"\"%\"bGF%)F$%#-1GF%" }{TEXT -1 11 "-table for " } {XPPEDIT 18 0 "D[3];" "6#&%\"DG6#\"\"$" }{TEXT -1 2 ": " }}{PARA 14 " " 0 "" {XPPEDIT 18 0 "RTABLE(19502228,MATRIX([[1, 2, 3, 4, 5, 6], [1, \+ 2, 3, 5, 6, 4], [1, 2, 3, 6, 4, 5], [1, 3, 2, 4, 6, 5], [1, 3, 2, 6, 5 , 4], [1, 3, 2, 5, 4, 6]]));" "6#-%'RTABLEG6$\")GA]>-%'MATRIXG6#7(7(\" \"\"\"\"#\"\"$\"\"%\"\"&\"\"'7(F,F-F.F0F1F/7(F,F-F.F1F/F07(F,F.F-F/F1F 07(F,F.F-F1F0F/7(F,F.F-F0F/F1" }{TEXT -1 2 " " }}{PARA 14 "" 0 "" {TEXT -1 4 "The " }{XPPEDIT 18 0 "a*b*a^`-1`" "6#*(%\"aG\"\"\"%\"bGF%) F$%#-1GF%" }{TEXT -1 11 "-table for " }{XPPEDIT 18 0 "D[4];" "6#&%\"DG 6#\"\"%" }{TEXT -1 2 ": " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "RTABLE(199 97264,MATRIX([[1, 2, 3, 4, 5, 6, 7, 8], [1, 2, 3, 4, 7, 8, 5, 6], [1, \+ 2, 3, 4, 5, 6, 7, 8], [1, 2, 3, 4, 7, 8, 5, 6], [1, 4, 3, 2, 5, 8, 7, \+ 6], [1, 4, 3, 2, 7, 6, 5, 8], [1, 4, 3, 2, 5, 8, 7, 6], [1, 4, 3, 2, 7 , 6, 5, 8]]));" "6#-%'RTABLEG6$\")ks**>-%'MATRIXG6#7*7*\"\"\"\"\"#\"\" $\"\"%\"\"&\"\"'\"\"(\"\")7*F,F-F.F/F2F3F0F17*F,F-F.F/F0F1F2F37*F,F-F. F/F2F3F0F17*F,F/F.F-F0F3F2F17*F,F/F.F-F2F1F0F37*F,F/F.F-F0F3F2F17*F,F/ F.F-F2F1F0F3" }{TEXT -1 1 " " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 317 1 "6" }{TEXT -1 14 ". Rotation, 4." }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "2. Groups" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 335 1 "1" }{TEXT -1 19 ". 4, 20, 100, 500. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 336 1 "2" }{TEXT -1 22 ". The Cayley table of " }{TEXT 339 1 "U" }{TEXT -1 6 "(40): " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "RTABL E(5154436,MATRIX([[1, 3, 7, 9, 11, 13, 17, 19, 21, 23, 27, 29, 31, 33, 37, 39], [3, 9, 21, 27, 33, 39, 11, 17, 23, 29, 1, 7, 13, 19, 31, 37] , [7, 21, 9, 23, 37, 11, 39, 13, 27, 1, 29, 3, 17, 31, 19, 33], [9, 27 , 23, 1, 19, 37, 33, 11, 29, 7, 3, 21, 39, 17, 13, 31], [11, 33, 37, 1 9, 1, 23, 27, 9, 31, 13, 17, 39, 21, 3, 7, 29], [13, 39, 11, 37, 23, 9 , 21, 7, 33, 19, 31, 17, 3, 29, 1, 27], [17, 11, 39, 33, 27, 21, 9, 3, 37, 31, 19, 13, 7, 1, 29, 23], [19, 17, 13, 11, 9, 7, 3, 1, 39, 37, 3 3, 31, 29, 27, 23, 21], [21, 23, 27, 29, 31, 33, 37, 39, 1, 3, 7, 9, 1 1, 13, 17, 19], [23, 29, 1, 7, 13, 19, 31, 37, 3, 9, 21, 27, 33, 39, 1 1, 17], [27, 1, 29, 3, 17, 31, 19, 33, 7, 21, 9, 23, 37, 11, 39, 13], \+ [29, 7, 3, 21, 39, 17, 13, 31, 9, 27, 23, 1, 19, 37, 33, 11], [31, 13, 17, 39, 21, 3, 7, 29, 11, 33, 37, 19, 1, 23, 27, 9], [33, 19, 31, 17, 3, 29, 1, 27, 13, 39, 11, 37, 23, 9, 21, 7], [37, 31, 19, 13, 7, 1, 2 9, 23, 17, 11, 39, 33, 27, 21, 9, 3], [39, 37, 33, 31, 29, 27, 23, 21, 19, 17, 13, 11, 9, 7, 3, 1]]));" "6#-%'RTABLEG6$\"(OW:&-%'MATRIXG6#72 72\"\"\"\"\"$\"\"(\"\"*\"#6\"#8\"#<\"#>\"#@\"#B\"#F\"#H\"#J\"#L\"#P\"# R72F-F/F4F6F9F;F0F2F5F7F,F.F1F3F8F:72F.F4F/F5F:F0F;F1F6F,F7F-F2F8F3F97 2F/F6F5F,F3F:F9F0F7F.F-F4F;F2F1F872F0F9F:F3F,F5F6F/F8F1F2F;F4F-F.F772F 1F;F0F:F5F/F4F.F9F3F8F2F-F7F,F672F2F0F;F9F6F4F/F-F:F8F3F1F.F,F7F572F3F 2F1F0F/F.F-F,F;F:F9F8F7F6F5F472F4F5F6F7F8F9F:F;F,F-F.F/F0F1F2F372F5F7F ,F.F1F3F8F:F-F/F4F6F9F;F0F272F6F,F7F-F2F8F3F9F.F4F/F5F:F0F;F172F7F.F-F 4F;F2F1F8F/F6F5F,F3F:F9F072F8F1F2F;F4F-F.F7F0F9F:F3F,F5F6F/72F9F3F8F2F -F7F,F6F1F;F0F:F5F/F4F.72F:F8F3F1F.F,F7F5F2F0F;F9F6F4F/F-72F;F:F9F8F7F 6F5F4F3F2F1F0F/F.F-F," }{TEXT -1 1 " " }}{PARA 14 "" 0 "" {TEXT 340 1 "3" }{TEXT -1 7 ". 139. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 344 1 "4" }{TEXT -1 2 ". " }{XPPEDIT 18 0 "RTABLE(4806316,MATRIX([[142, 22 1], [17, 44]]));" "6#-%'RTABLEG6$\"(;j![-%'MATRIXG6#7$7$\"$U\"\"$@#7$ \"#<\"#W" }{TEXT -1 3 " . " }}{PARA 14 "" 0 "" {TEXT 346 0 "" }{TEXT -1 0 "" }{TEXT 347 1 "5" }{TEXT -1 2 ". " }{XPPEDIT 18 0 "RTABLE(19106 592,MATRIX([[10, 48], [119, 94]]));" "6#-%'RTABLEG6$\")#f1\">-%'MATRIX G6#7$7$\"#5\"#[7$\"$>\"\"#%*" }{TEXT 345 5 " . " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 350 1 "6" }{TEXT -1 16 ". 2016 and 336. " }} {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 352 1 "7" }{TEXT -1 146 ". It is a group. The identity is 15, the inverses to 5, 15, 25, 45, 55, 65 ar e 45, 15, 65, 5, 55, 25, in the same order. The Cayley table of it is " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "RTABLE(19350404,MATRIX([[25, 5, 55 , 15, 65, 45], [5, 15, 25, 45, 55, 65], [55, 25, 65, 5, 45, 15], [15, \+ 45, 5, 65, 25, 55], [65, 55, 45, 25, 15, 5], [45, 65, 15, 55, 5, 25]]) );" "6#-%'RTABLEG6$\")//N>-%'MATRIXG6#7(7(\"#D\"\"&\"#b\"#:\"#l\"#X7(F -F/F,F1F.F07(F.F,F0F-F1F/7(F/F1F-F0F,F.7(F0F.F1F,F/F-7(F1F0F/F.F-F," } {TEXT -1 1 " " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 27 "3. Finite Grou ps; Subgroups" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 431 1 "1 " }{TEXT -1 12 ". 4 and 10. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 432 1 "2" }{TEXT -1 2 ". " }{XPPEDIT 18 0 "7435112;" "6#\"(7^V(" } {TEXT -1 2 ". " }}{PARA 14 "" 0 "" {TEXT 434 1 "3" }{TEXT -1 2 ". " } {XPPEDIT 18 0 "[1, 19, 71, 44, 111, 79, 51, 99, 141, 69, 6, 114, 136, \+ 119, 86, 39, 16, 14, 121, 124, 36, 104, 91, 134, 81, 89, 96, 84];" "6# 7>\"\"\"\"#>\"#r\"#W\"$6\"\"#z\"#^\"#**\"$T\"\"#p\"\"'\"$9\"\"$O\"\"$> \"\"#')\"#R\"#;\"#9\"$@\"\"$C\"\"#O\"$/\"\"#\"*\"$M\"\"#\")\"#*)\"#'* \"#%)" }{TEXT -1 2 ". " }}{PARA 14 "" 0 "" {TEXT 437 1 "4" }{TEXT -1 2 ". " }{XPPEDIT 18 0 "[matrix([[1, 0], [0, 1]]), matrix([[2, 5], [1, \+ 2]]), matrix([[3, 2], [4, 3]]), matrix([[2, 1], [5, 2]]), matrix([[5, \+ 0], [0, 5]]), matrix([[4, 1], [5, 4]]), matrix([[3, 4], [2, 3]]), matr ix([[4, 5], [1, 4]])];" "6#7*-%'matrixG6#7$7$\"\"\"\"\"!7$F*F)-F%6#7$7 $\"\"#\"\"&7$F)F0-F%6#7$7$\"\"$F07$\"\"%F7-F%6#7$7$F0F)7$F1F0-F%6#7$7$ F1F*7$F*F1-F%6#7$7$F9F)7$F1F9-F%6#7$7$F7F97$F0F7-F%6#7$7$F9F17$F)F9" } {TEXT -1 3 " . " }}{PARA 14 "" 0 "" {TEXT 441 1 "5" }{TEXT -1 13 ". 10 and 12. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 467 1 "6" }{TEXT -1 2 ". " }{XPPEDIT 18 0 "[1, 2, 3, 4, 5, 6];" "6#7(\"\"\"\"\"#\"\"$\" \"%\"\"&\"\"'" }{TEXT -1 2 ". " }}{PARA 14 "" 0 "" {TEXT -1 0 "" } {TEXT 472 1 "7" }{TEXT -1 2 ". " }{XPPEDIT 18 0 "[matrix([[1, 0], [0, \+ 1]]), matrix([[2, 0], [0, 2]]), matrix([[3, 0], [0, 3]]), matrix([[4, \+ 0], [0, 4]])];" "6#7&-%'matrixG6#7$7$\"\"\"\"\"!7$F*F)-F%6#7$7$\"\"#F* 7$F*F0-F%6#7$7$\"\"$F*7$F*F6-F%6#7$7$\"\"%F*7$F*F<" }{TEXT -1 3 " . " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 473 1 "8" }{TEXT -1 2 ". " } {XPPEDIT 18 0 "[matrix([[1, 0], [0, 1]]), matrix([[5, 0], [0, 5]])];" "6#7$-%'matrixG6#7$7$\"\"\"\"\"!7$F*F)-F%6#7$7$\"\"&F*7$F*F0" }{TEXT -1 3 " . " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 476 1 "9" }{TEXT -1 7 ". Yes. " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 16 "4. Cyclic Grou ps" }}{EXCHG {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 512 1 "1" }{TEXT -1 2 ". " }{TEXT 513 0 "" }{TEXT -1 0 "" }{TEXT 514 1 "U" }{TEXT -1 6 "(46), " }{TEXT 515 0 "" }{TEXT -1 0 "" }{TEXT 516 1 "U" }{TEXT -1 6 " (47), " }{TEXT 517 0 "" }{TEXT -1 0 "" }{TEXT 518 1 "U" }{TEXT -1 6 "( 49), " }{TEXT 519 0 "" }{TEXT -1 0 "" }{TEXT 520 1 "U" }{TEXT -1 6 "(5 0), " }{TEXT 521 0 "" }{TEXT -1 0 "" }{TEXT 522 1 "U" }{TEXT -1 6 "(53 ), " }{TEXT 523 0 "" }{TEXT -1 4 "and " }{TEXT 524 1 "U" }{TEXT -1 38 "(54) are cyclic. Their generators are " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "\{5, 7, 11, 15, 17, 19, 21, 33, 37, 43\};" "6#<,\"\"&\"\"(\"#6\" #:\"#<\"#>\"#@\"#L\"#P\"#V" }{TEXT -1 5 " for " }{TEXT 525 0 "" } {TEXT -1 0 "" }{TEXT 526 1 "U" }{TEXT -1 6 "(46), " }}{PARA 14 "" 0 " " {XPPEDIT 18 0 "\{5, 10, 11, 13, 15, 19, 20, 22, 23, 26, 29, 30, 31, \+ 33, 35, 38, 39, 40, 41, 43, 44, 45\};" "6#<8\"\"&\"#5\"#6\"#8\"#:\"#> \"#?\"#A\"#B\"#E\"#H\"#I\"#J\"#L\"#N\"#Q\"#R\"#S\"#T\"#V\"#W\"#X" } {TEXT -1 5 " for " }{TEXT 527 0 "" }{TEXT -1 0 "" }{TEXT 528 1 "U" } {TEXT -1 6 "(47), " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "\{3, 5, 10, 12, \+ 17, 24, 26, 33, 38, 40, 45, 47\};" "6#<.\"\"$\"\"&\"#5\"#7\"#<\"#C\"#E \"#L\"#Q\"#S\"#X\"#Z" }{TEXT -1 5 " for " }{TEXT 529 0 "" }{TEXT -1 0 "" }{TEXT 530 1 "U" }{TEXT -1 6 "(49), " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "\{3, 13, 17, 23, 27, 33, 37, 47\};" "6#<*\"\"$\"#8\"#<\"#B\"#F\" #L\"#P\"#Z" }{TEXT -1 5 " for " }{TEXT 531 0 "" }{TEXT -1 0 "" }{TEXT 532 1 "U" }{TEXT -1 6 "(50), " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "\{2, \+ 3, 5, 8, 12, 14, 18, 19, 20, 21, 22, 26, 27, 31, 32, 33, 34, 35, 39, 4 1, 45, 48, 50, 51\};" "6#<:\"\"#\"\"$\"\"&\"\")\"#7\"#9\"#=\"#>\"#?\"# @\"#A\"#E\"#F\"#J\"#K\"#L\"#M\"#N\"#R\"#T\"#X\"#[\"#]\"#^" }{TEXT -1 5 " for " }{TEXT 533 0 "" }{TEXT -1 0 "" }{TEXT 534 1 "U" }{TEXT -1 6 "(53), " }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "\{5, 11, 23, 29, 41, 47\}; " "6#<(\"\"&\"#6\"#B\"#H\"#T\"#Z" }{TEXT -1 5 " for " }{TEXT 535 0 "" }{TEXT -1 0 "" }{TEXT 536 1 "U" }{TEXT -1 6 "(54). " }}{PARA 14 "" 0 " " {TEXT -1 0 "" }{TEXT 537 1 "2" }{TEXT -1 27 ". 4 elements; 2, 6, 14, 18." }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 539 1 "3" }{TEXT -1 5 ". 7. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 552 1 "4" }{TEXT -1 6 ". 12. " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 548 1 "5" }{TEXT -1 2 " . " }{XPPEDIT 18 0 "57175109127133391183231447607307439381895;" "6#\"J &*=QRuI2wWJK=\"RLr74^6\"-%'CURVESG6$7$7$F'$F1F(7$F'$!\"#F(-%'COLOURG6&%$RGBGF($\"#5F 1F(-F,6$7$F'$!$3%FF3-F56$7$F&7$F'$!\"%F(F=-F56$7$F:F&F=-F$6#FL-F $6#F8-F,6$7$F'$!\"*F1Q$<1>F3-F$6#F:-F,6$7$F'$!#>F1Q$<2>F3-%*AXESSTYLEG 6#%%NONEG" 1 2 0 1 10 0 2 9 1 1 2 1.000000 45.000000 45.000000 0 0 "Cu rve 1" "Curve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Cu rve 8" "Curve 9" "Curve 10" "Curve 11" }}}{PARA 14 "" 0 "" {XPPEDIT 18 0 "Z[12];" "6#&%\"ZG6#\"#7" }{TEXT -1 2 ": " }}{PARA 14 "" 0 "" {TEXT -1 1 " " }{GLPLOT2D 400 300 300 {PLOTDATA 2 "66-%%TEXTG6$7$$\"\" \"\"\"!$!#H!\"\"Q$<6>6\"-%'POINTSG6#7$$\"+++++]!#5$!\"%F)-F$6$7$F3$!$3 %!\"#Q$<0>F.-%'CURVESG6$7$7$$F)F)$!\"$F)F2-%'COLOURG6&%$RGBGF)$\"#5F,F )-F@6$7$7$F3$F,F)7$F'$F=F)FG-F06#FP-F$6$7$F3$!\"*F,Q$<1>F.-F06#FR-F$6$ 7$F'$!#>F,Q$<3>F.-F06#7$F'FE-F@6$7$F`oF2FG-F@6$7$FP7$FDFSFG-F@6$7$FRF` oFG-F@6$7$FgoF`oFG-F$6$7$FDF[oQ$<2>F.-F06#FC-F$6$7$FDF*Q$<4>F.-F06#Fgo -F@6$7$FgoFCFG-%*AXESSTYLEG6#%%NONEG" 1 2 0 1 10 0 2 9 1 1 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curve 10" "Curve 11" "Cur ve 12" "Curve 13" "Curve 14" "Curve 15" "Curve 16" "Curve 17" "Curve 1 8" "Curve 19" }}}{PARA 14 "" 0 "" {XPPEDIT 18 0 "Z[60];" "6#&%\"ZG6#\" #g" }{TEXT -1 2 ": " }}{PARA 14 "" 0 "" {TEXT -1 1 " " }}{PARA 14 "" 0 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6O-%%TEXTG6$7$$\"\"$\"\"!$!#H! \"\"Q%<15>6\"-F$6$7$$\"\"#F)F*Q%<10>F.-%'POINTSG6#7$F'$!\"$F)-F66#7$F2 F9-F$6$7$$\"\"\"F)F*Q$<6>F.-F66#7$$F)F)F9-F$6$7$FGF*Q$<4>F.-F66#7$FAF9 -F$6$7$$\"+++++D!\"*$!#>F,Q$<5>F.-F$6$7$$\"+++++]!#5FUQ$<2>F.-F66#7$$ \"+++++:FT$!\"#F)-F$6$7$F\\oFUQ$<3>F.-F66#7$FRF^o-F66#7$F\\o$F,F)-%'CU RVESG6$7$7$FenF^oFN-%'COLOURG6&%$RGBGF)$\"#5F,F)-F\\p6$7$FF7$F\\o$!\"% F)F`p-F\\p6$7$F_pFFF`p-F\\p6$7$FioFfoF`p-F$6$7$F\\o$!$3&F_oQ$<0>F.-F$6 $7$FR$!#RF,Q%<30>F.-F66#7$F\\o$!\"&F)-F$6$7$FenF[rQ%<12>F.-F66#Fip-F$6 $7$F\\oF[rQ%<20>F.-F66#7$FRFjp-F66#7$FenFjp-F\\p6$7$F[oF8F`p-F\\p6$7$F =F_sF`p-F\\p6$7$F[oFNF`p-F\\p6$7$F=FipF`p-F\\p6$7$F_pF=F`p-F\\p6$7$FNF _sF`p-F\\p6$7$FNFbsF`p-F\\p6$7$FioF[oF`p-F\\p6$7$FipF`rF`p-F\\p6$7$Fbs F`rF`p-F\\p6$7$FfoF=F`p-F\\p6$7$F8F_sF`p-F\\p6$7$FFFbsF`p-F\\p6$7$FioF _pF`p-F\\p6$7$FfoF8F`p-F\\p6$7$F_sF`rF`p-F$6$7$F\\o$FTF,Q$<1>F.-F66#F_ p-%*AXESSTYLEG6#%%NONEG" 1 2 0 1 10 0 2 9 1 1 2 1.000000 45.000000 45.000000 0 0 "Curve 1" "Curve 2" "Curve 3" "Curve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curve 10" "Curve 11" "Curve 12" "Cu rve 13" "Curve 14" "Curve 15" "Curve 16" "Curve 17" "Curve 18" "Curve \+ 19" "Curve 20" "Curve 21" "Curve 22" "Curve 23" "Curve 24" "Curve 25" "Curve 26" "Curve 27" "Curve 28" "Curve 29" "Curve 30" "Curve 31" "Cur ve 32" "Curve 33" "Curve 34" "Curve 35" "Curve 36" "Curve 37" "Curve 3 8" "Curve 39" "Curve 40" "Curve 41" "Curve 42" "Curve 43" "Curve 44" } }{TEXT -1 0 "" }}{PARA 14 "" 0 "" {XPPEDIT 18 0 "Z[100];" "6#&%\"ZG6# \"$+\"