{VERSION 5 0 "IBM INTEL NT" "5.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 "2D Output" 2 20 "" 0 1 0 0 255 1 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 "Warning" -1 7 1 {CSTYLE "" -1 -1 "Co urier" 1 10 0 0 255 1 2 2 2 2 2 1 1 1 3 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Out put" -1 12 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 3 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Plot" -1 13 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 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 "Titl e" -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 "Times" 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 7 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 "2^200-1;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"hnv8INGz #y$*H?ADgi6M#4i>av-**eU/Qpg\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 7 "p rints " }{XPPEDIT 18 0 "2^200-1;" "6#,&*$\"\"#\"$+#\"\"\"F'!\"\"" } {TEXT -1 82 ". If you hit Enter without a colon, or a semicolon, you w ill 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, because the command was ended with a colon. To see the picture, we can either change the colon to a semicolon, or type \+ " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "%;" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6%-%'CURVESG6$7S7$$!\"\"\"\"!$\"\" \"F*7$$!3ommm;p0k&*!#=$\"3c]R_q%=r9*F07$$!3wKL$3`0n(F07$$!3:mmm\"4m(G$)F0$\"32V'p4YMo$p F07$$!3\"QLL3i.9!zF0$\"3Z6=$z\"z@ViF07$$!3\"ommT!R=0vF0$\"3(4CONayFj&F 07$$!3u****\\P8#\\4(F0$\"30z7`y3zL]F07$$!3+nm;/siqmF0$\"3qSopHns\\WF07 $$!3[++](y$pZiF0$\"335mBmxO.RF07$$!33LLL$yaE\"eF0$\"3m(y?Ic&pyLF07$$!3 hmmm\">s%HaF0$\"3ej\"3!Go\"z%HF07$$!3Q+++]$*4)*\\F0$\"3mUqC6(*4)\\#F07 $$!39+++]_&\\c%F0$\"3Mc-XV;)Q3#F07$$!31+++]1aZTF0$\"3?U-MW$4-s\"F07$$! 3umm;/#)[oPF0$\"3(3L%\\M.:?9F07$$!3hLLL$=exJ$F0$\"3@IvIO>v+6F07$$!3*RL LLtIf$HF0$\"3&y?J4F*o>')!#>7$$!3]++]PYx\"\\#F0$\"3he#)3W3%*3iF]q7$$!3E MLLL7i)4#F0$\"3!\\_(*436US%F]q7$$!3c****\\P'psm\"F0$\"31!QHT/)yzFF]q7$ $!3')****\\74_c7F0$\"3KK)\\N![%)y:F]q7$$!3)3LLL3x%z#)F]q$\"3M!=Wt2u\\& o!#?7$$!3KMLL3s$QM%F]q$\"3a8,Dp@*o)=Fgr7$$!3]^omm;zr)*!#@$\"3+4t+rqAX( *!#C7$$\"3%pJL$ezw5VF]q$\"3Q>$f!R?Fe=Fgr7$$\"3s*)***\\PQ#\\\")F]q$\"3U ZsD4'35k'Fgr7$$\"3GKLLe\"*[H7F0$\"3&e?f/fV;^\"F]q7$$\"3I*******pvxl\"F 0$\"3a([5:F?#[FF]q7$$\"3#z****\\_qn2#F0$\"3um(3N\"e(HJ%F]q7$$\"3U)*** \\i&p@[#F0$\"3!RV,qtl6;'F]q7$$\"3B)****\\2'HKHF0$\"3;&Rg9Fg$)f)F]q7$$ \"3ElmmmZvOLF0$\"3CrsGPKR86F07$$\"3i******\\2goPF0$\"3+c+Hh^B?9F07$$\" 3UKL$eR<*fTF0$\"3[xc,u7\\Ix^Bqi j(F07$$\"3[++]i`1h\"*F0$\"31F(*fd=^#R)F07$$\"3W++]P?Wl&*F0$\"3]:sFP\"o (\\\"*F07$F+F+-%'COLOURG6&%$RGBG$\"#5F)$F*F*F^[l-%+AXESLABELSG6$Q\"x6 \"Q!Fc[l-%%VIEWG6$;F(F+%(DEFAULTG" 1 2 0 1 10 0 2 9 1 4 2 1.000000 45.000000 45.000000 0 0 "Curve 1" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 108 "which gives us the plot of the parabola. % in this example means \+ the latest Maple 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;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"hn w8INGz#y$*H?ADgi6M#4i>av-**eU/Qpg\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 154 "As we just saw, outputs after a colon were not visible, but ha d 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 "Commen ts" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 200 "Generally, the text mode ca n be used for comments. In the Maple Input mode, # plays the role simi lar to // in C++, or % in LaTeX - it skips everything after that sign \+ in the line where it is located. " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Exercises" }}{EXCHG {PARA 14 "" 0 "" {TEXT 269 1 "1" }{TEXT -1 35 ". What is the 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 different results for maple and Maple? " }}{PARA 14 "" 0 "" {TEXT 271 1 "3" }{TEXT -1 93 ". How, writing a Maple procedure, one g oes to the next line without executing the commands? " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 275 3 "4-7" }{TEXT -1 47 ". Click Ctrl+n, Ct rl+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=j AxyyyiIvy:vyIvyIv[jyYHvy:jyyiIvy:r=yy=YBvyaj=yyyyA:::x B\\B[=<:yyyxJrs=yy=YBvyA;ZyyyyyY:::r]>jB@kBDZB:;r=vyIv[jmyyZj=yIv[yyyy yyA:::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 ". Type \"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:vyjy[yyyIvyjEv;ZymykA>ZI>xyy;[aIv;v[ yMrwYXYBv:yyyyyy::\\I\\BI>r=Y:YryyyyYryB:xjyyiIv;yIvx yAKI>r=Y:;jAxj=Yr=Yjy=iyy[jyY[qAj:>KI>r=Y:Yry>XyqAjyCvvyjAZ:vyjEv[qAZ:>[BZI> ::[I:[y=yI:[ayyY:B:yIv ryZjmAvyy=:::ZrE\\KF\\vJ:yA:<:ryZjmAvyy=:::Zr]Bl=Cv;B:yqywY:xZjmyyIBv; Zyuy::::BxB\\vJxyyyI:::::::::BxB\\vJry:::::::::Zryyyyyymu=:xI::::::::: BxKF\\K><:;::::::::::::1:" }{TEXT -1 19 " and the font size " } {BITMAP 60 19 19 1 "?TMgh:B:nH>?^AV>Z:@J;F:;B:;N:CZ<: ;F:;Hj;H::yqy[:vYxi:vyyyYKF\\KF\\::::>Z:v[yyyy=::>xyAXxIyA:\\I\\BI>Zyy YyA:BxB\\vJ:xZyyY:Zr]B>KI>ZjmyyI:Bx>JKn=;jAry:ZrM:>[BXvY:BxxI ry::Zryyyyyymu]:ry::ZrAkB@KB<;J:<:::::\\J:3:" }{TEXT -1 416 " to anyth ing you like. Type your name and Ctrl+j, Ctrl+. , and click the up-arr ow key after that. Type \"Exercise 4.\" (without quotes) and click the down-arrow key. Type 100!; (including a semicolon) and hit Enter. Typ e ifactor(%); and hit Enter. Click Shift+F3, starting a new exercise, \+ Exercise 5, and add, multiply, subtract and divide a few numbers. Clic k Shift+F3 again starting 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 the Maple prompt and hit Enter. After the M aple prompt, type animate3d and click F1. Select the last example on t he help page and click Ctrl+c. Click Ctrl+F4. Select animate3d and cli ck Ctrl+v. Hit Enter. Click on the picture, then on the play button in the toolbar. Use the mouse to rotate the surface. Find the best-looki ng position and click the play button again. Click Ctrl+s, choose an a ppropriate place, give the worksheet a name you like and save it. Clic k Ctrl+p and print it. Click Alt+f, then e, then h, and save the works heet as an html file. Click Win+e to start Windows Explorer, find the \+ html file you just saved and click on it to see it in the browser. Enj oy. " }}}}}{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 "It is easy to factor integers in Maple: \+ " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "ifactor(2^57-1);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#**-%!G6#\"\"(\"\"\"-F%6#\"(ZG@\"F(-F%6 #\"'(GC&F(-F%6#\"&xB$F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 95 "The gr eatest common divisor and the least common multiple can be evaluated i n Maple as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "igcd (715,1001);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$V\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "ilcm(843,216,51);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"(K=.\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 67 "The next example shows how to find integer solutions of equations: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "isolve(7*x+15*y=1);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#<$/%\"xG,&!\"#\"\"\"*&\"#:F(%$_Z1GF(! \"\"/%\"yG,&F(F(*&\"\"(F(F+F(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 59 "To find a particular solution, one can replace the unknown " } {XPPEDIT 18 0 "_Z1;" "6#%$_Z1G" }{TEXT -1 41 " by any integer value, f or example, by 2:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "subs(_ Z1=2,%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<$/%\"yG\"#:/%\"xG!#K" }}} }{SECT 0 {PARA 4 "" 0 "" {TEXT -1 18 "Modular Arithmetic" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 " Maple can do modular arithmetic, too:" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "345 mod 7;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"#" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 110 "It \+ can be used for checking the validity of money order numbers, UPS pick up record 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 if the number contains not more than 11 digits and then if the \+ number formed by the first 10 digits is congruent to the last digit, i .e. check digit, modulo 9. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "isMoneyOrder(39539881642);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%tr ueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "isMoneyOrder(3955988 1642);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 125 "The similar construction works for air ticket nu mbers and UPS pickup records numbers, just by replacing modulo 9 to mo dulo 7:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "isUPS:= n -> n<1 0^10 and trunc(n/10) mod 7 = n mod 10:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "isUPS(7681139992);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "isUPS(121373147 3673);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}{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 "isAirT icket(1213731473673);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 102 "For the UPC code, one needs to us e a dot product, so 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 97 "isUPC:= n -> evalb(Vector( 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);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 20 "isUPC(012000658978);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "A similar const ruction works for bank checks:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 96 "isBankCheck:= n -> evalb(Vector(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 "isBankCheck(13);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#% %trueG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 103 "For ISBN numbers we ne ed a slightly more sophisticated method, because inputs can include th e letter X:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 309 "isISBN:= pr oc(str) local s;\nwith(LinearAlgebra);\nif type(str,integer) then s:=[ str]; else\ns:=sscanf(str,\"%d%[Xx]\") end if;\nevalb(`if`(nops(s)=1,V ector(10,convert(s[1],base,10)),\n`if`(nops(s)=2 and not s[2]=\"\", Ve ctor(10, [10,op(convert(s[1],base,10))]),Vector([1,0$9]))) . Vector([ $ 1..10]) mod 11 = 0) end: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "isISBN(0618122141);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "isISBN(\"618122141\");" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "isISBN(\"6x\");" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%% trueG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 237 "As you can see, ISBN nu mbers without an X can be entered either as integers, or as strings, i nside quotes. ISBN numbers with an X at the end must be entered inside quotes, because it is not one of the data formats that Maple recogniz es. " }}}}{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);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#,(*$),&%\"nG\"\"\"F(F(\"\"#F(#F(F)*&#F (F)F(F'F(!\"\"#F(F)F-" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "si mplify(%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,&*$)%\"nG\"\"#\"\"\"#F( F'*&F)F(F&F(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "simplify( sum(i^10,i=1..n));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,0*$)%\"nG\"#5\" \"\"#F(\"\"#*&#F(\"#6F()F&F-F(F(*$)F&\"\"(F(!\"\"*&#\"\"&\"\"'F()F&\" \"*F(F(*&#F(F*F(*$)F&\"\"$F(F(F2*$)F&F5F(F(*&#F5\"#mF(F&F(F(" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "sort(%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,0*$)%\"nG\"#6\"\"\"#F(F'*&#F(\"\"#F()F&\"#5F(F(*&#\"\" &\"\"'F()F&\"\"*F(F(*$)F&\"\"(F(!\"\"*$)F&F1F(F(*&#F(F,F(*$)F&\"\"$F(F (F8*&#F1\"#mF(F&F(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "The answe rs can be proven 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 simplify(f(n+1))=simplify(f(n)+(n+1)^10);" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 145 "Also , Maple can find formulas for many polynomial sequences, for example, \+ sums of squares, 1, 5, 14, 30, 55, ..., using interpolating polynomial " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "interp([$1..5],[1,5,14 ,30,55],x);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,(*$)%\"xG\"\"$\"\"\"#F (F'*&#F(\"\"#F()F&F,F(F(*&#F(\"\"'F(F&F(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "Since formula is known, Maple can easily continue the seq uence: " }}}{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; " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#\"*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$S\"" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"$/#" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$&G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$&Q" }}}}{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 commo n divisor and the least common 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 ". Fi nd integer solutions 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 digit of the ISBN number starting from 1-894511-01. " }} {PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 286 1 "5" }{TEXT -1 67 ". Find t he formula for the 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 se quence 3, 17, 81, 255, 623, 1293, ... and find the next 4 elements of \+ the sequence. " }}}}}{SECT 0 {PARA 3 "" 0 "" {TEXT -1 25 "1. Introduct ion to Groups" }}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 26 "Cyclic and Dihed ral Groups" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 194 "In this section we \+ will study two series of groups, cyclic and dihedral, represented as r otations and symmetries of regular polygons. It is convenient to enume rate all the vertices of a regular " }{TEXT 291 1 "n" }{TEXT -1 32 "-g on counterclockwise 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 " degr ees moves vertex 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) will be represented as [1, 2, ..., n], or [$1..n] in Mapl e notation. See Maple help item on \"dollar\", explaining that notatio n. Now we can define 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 grou ps are defined here only for " }{TEXT 310 1 "n" }{TEXT -1 17 " not les s than 3:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "dihedral(2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7&7$\"\"\"\"\"#7$F&F%F'F$" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 34 "Here are correctly defined groups: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "cyclic(3);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%7%\"\"\"\"\"#\"\"$7%F&F'F%7%F'F%F&" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "dihedral(4);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*7&\"\"\"\"\"#\"\"$\"\"%7&F&F'F(F%7&F'F(F%F&7&F(F %F&F'7&F(F'F&F%7&F'F&F%F(7&F&F%F(F'7&F%F(F'F&" }}}{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 itse lf, vertex 2 to the position of vertex 4, vertex 3 to itself, and vert ex 4 to the position of vertex 2, so it is the reflection across the d iagonal connecting 1 and 3, see the picture below. Permutation notatio n introduced above, is rather long. To make notation easier, we will d enote elements just by their ordinal numbers in the lists of the group elements, so the identity will always be the number 1, and the last e lement of " }{XPPEDIT 18 0 "D[4];" "6#&%\"DG6#\"\"%" }{TEXT -1 13 " wi ll be 8. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 87 "In this new notatio n, to find the 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:=nops(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));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "inv(5,dihedral(4));" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#\"\"&" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "If we want to see the \+ graphical representations of " }{TEXT 266 2 "kr" }{TEXT -1 13 " elemen ts 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 " eleme nts in each row, in " }{TEXT 411 1 "r" }{TEXT -1 42 " rows, we can use the following procedure:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 901 "Grid:=proc(g,m,k,r) local ngon,ngons1,ngons2,n,a,b,i,j1,j2,p,ar,l ,ngonlabels,text1,text2,textar;\nwith(plots); n:=nops(g[1]); \nngon := (a,b) -> [seq([ a+cos(2*Pi*i/n), b+sin(2*Pi*i/n) ], i = 1..n)]:\nngon s1:=seq(seq(ngon(10*j1,-4*j2),j1=1..k),j2=1..r);\nngons2:=seq(seq(ngon (10*j1+4.5,-4*j2),j1=1..k),j2=1..r);\np:=polygonplot(\{ngons1,ngons2\} ,axes=NONE,scaling=CONSTRAINED,color=aquamarine):\nar:=arrow([seq(seq( [[10*j1+1.6,-4*j2],[1.2,0]],j1=1..k),j2=1..r)],shape=arrow,color=blue) :\nngonlabels:=(a,b,l)->seq([ a+1.4*cos(2*Pi*i/n), b+1.4*sin(2*Pi*i/n) ,l[i+1] ], i = 0..n-1):\ntext1:=textplot([seq(seq(ngonlabels(10*j1,-4* j2,[$1..n]),j1=1..k),j2=1..r)],color=red): \ntext2:=textplot([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,text1,text2,tex tar) 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(dihedral(4),1,2,4) ;" }}{PARA 7 "" 1 "" {TEXT -1 50 "Warning, the name changecoords has b een redefined\n" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6_p-%)POLYGONSG637&7$$\"#5\"\"!$!\"$F*7$$\"\"*F*$!\"%F*7$F($!\"&F*7$$ \"#6F*F07&7$$\"#?F*$!#:F*7$$\"#>F*$!#;F*7$F:$!#\"F^oF^x7$Fht$!++++ 17F^oF_uFcu-F]t6&7$7$F\\vFN7$F_vFN7%7$FcvFaxFjx7$FcvFdxF_uFcu-F]t6&7$7 $FatFA7$FdtFA7%7$Fht$!++++%f\"F^oFby7$Fht$!++++1;F^oF_uFcu-F]t6&7$7$F \\vFA7$F_vFA7%7$FcvFeyF^z7$FcvFhyF_uFcu-%%TEXTG6%7$$\"$9\"FapF0Q\"16\" -Fcs6&FesFfuFeuFeu-Fcz6%7$F($!#EFapQ\"2FizFjz-Fcz6%7$$\"#')FapF0Q\"3Fi zFjz-Fcz6%7$F($!#aFapQ\"4FizFjz-Fcz6%7$$\"$9#FapF0FhzFjz-Fcz6%7$F:F_[l Fa[lFjz-Fcz6%7$$\"$'=FapF0Fg[lFjz-Fcz6%7$F:F[\\lF]\\lFjz-Fcz6%7$FfzF]o FhzFjz-Fcz6%7$F($!#mFapFa[lFjz-Fcz6%7$Fe[lF]oFg[lFjz-Fcz6%7$F($!#%*Fap F]\\lFjz-Fcz6%7$Fa\\lF]oFhzFjz-Fcz6%7$F:Fd]lFa[lFjz-Fcz6%7$Fi\\lF]oFg[ lFjz-Fcz6%7$F:F\\^lF]\\lFjz-Fcz6%7$FfzFNFhzFjz-Fcz6%7$F($!$1\"FapFa[lF jz-Fcz6%7$Fe[lFNFg[lFjz-Fcz6%7$F($!$M\"FapF]\\lFjz-Fcz6%7$Fa\\lFNFhzFj z-Fcz6%7$F:F`_lFa[lFjz-Fcz6%7$Fi\\lFNFg[lFjz-Fcz6%7$F:Fh_lF]\\lFjz-Fcz 6%7$FfzFAFhzFjz-Fcz6%7$F($!$Y\"FapFa[lFjz-Fcz6%7$Fe[lFAFg[lFjz-Fcz6%7$ F($!$u\"FapF]\\lFjz-Fcz6%7$Fa\\lFAFhzFjz-Fcz6%7$F:F\\alFa[lFjz-Fcz6%7$ Fi\\lFAFg[lFjz-Fcz6%7$F:FdalF]\\lFjz-Fcz6%7$$\"$f\"FapF0FhzFjz-Fcz6%7$ F_pF_[lFa[lFjz-Fcz6%7$$\"$J\"FapF0Fg[lFjz-Fcz6%7$F_pF[\\lF]\\lFjz-Fcz6 %7$$\"$f#FapF0F]\\lFjz-Fcz6%7$F[qF_[lFhzFjz-Fcz6%7$$\"$J#FapF0Fa[lFjz- Fcz6%7$F[qF[\\lFg[lFjz-Fcz6%7$FeblF]oFg[lFjz-Fcz6%7$F_pFd]lF]\\lFjz-Fc z6%7$F]clF]oFhzFjz-Fcz6%7$F_pF\\^lFa[lFjz-Fcz6%7$FeclF]oFa[lFjz-Fcz6%7 $F[qFd]lFg[lFjz-Fcz6%7$F]dlF]oF]\\lFjz-Fcz6%7$F[qF\\^lFhzFjz-Fcz6%7$Fe blFNF]\\lFjz-Fcz6%7$F_pF`_lFg[lFjz-Fcz6%7$F]clFNFa[lFjz-Fcz6%7$F_pFh_l FhzFjz-Fcz6%7$FeclFNFg[lFjz-Fcz6%7$F[qF`_lFa[lFjz-Fcz6%7$F]dlFNFhzFjz- Fcz6%7$F[qFh_lF]\\lFjz-Fcz6%7$FeblFAFa[lFjz-Fcz6%7$F_pF\\alFhzFjz-Fcz6 %7$F]clFAF]\\lFjz-Fcz6%7$F_pFdalFg[lFjz-Fcz6%7$FeclFAFhzFjz-Fcz6%7$F[q F\\alF]\\lFjz-Fcz6%7$F]dlFAFg[lFjz-Fcz6%7$F[qFdalFa[lFjz-Fcz6%7$$\"$A \"Fap$!#NFapFhzFcu-Fcz6%7$$\"$A#FapF_ilFa[lFcu-Fcz6%7$F]il$!#vFapFg[lF cu-Fcz6%7$FdilFiilF]\\lFcu-Fcz6%7$F]il$!$:\"FapQ\"5FizFcu-Fcz6%7$FdilF ajlQ\"6FizFcu-Fcz6%7$F]il$!$b\"FapQ\"7FizFcu-Fcz6%7$FdilF[[mQ\"8FizFcu -%(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" "Cu rve 4" "Curve 5" "Curve 6" "Curve 7" "Curve 8" "Curve 9" "Curve 10" "C urve 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" "Curve 28" "Curve 29" "C urve 30" "Curve 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" "Curve 44" "Curve 45" "Curve 46" "Curve 47" "Curve 48" "C urve 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" "Curve 63" "Curve 64" "Curve 65" "Curve 66" "Curve 67" "C urve 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" }}}}{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);" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6[y-%)POLYGONSG677,7$$\"+*p,4`\"!\" )$!+[Z@7M!\"*7$$\"+*p,4[\"F*$!+%[V*[IF-7$$\"+,$)4>9F*F17$$\"+,$)4p8F*F +7$$\"$N\"!\"\"$!\"%\"\"!7$F7$!+__y(e%F-7$F4$!+;l0^\\F-7$F/FD7$F(FA7$$ \"$b\"FF*7$$\"+*p,4.\"F*$!+[V*[!>F*7$$\"+1 I)4p*F-FT7$$\"+1I)4>*F-FO7$$\"\"*F?$!#?F?7$FZ$!+D&y(e?F*7$FW$!+_c5&4#F *7$FRF_o7$FMF\\o7$$\"#6F?Fin7,7$$\"+*p,4`#F*$!+v9AT6F*7$$\"+*p,4[#F*$! +[V*[5\"F*7$$\"+,$)4>CF*F_p7$$\"+,$)4pBF*Fjo7$$\"$N#F<$!#7F?7$Fep$!+D& y(e7F*7$Fbp$!+_c5&H\"F*7$F]pF`q7$FhoF]q7$$\"$b#FF*FT7$$\"+,$ )4>>F*FO7$$\"#>F?Fin7$FavF\\o7$F^vF_o7$F[vF_o7$FhuF\\o7$$\"#@F?Fin7,7$ F(FO7$F/FT7$F4FT7$F7FO7$F:Fin7$F7F\\o7$F4F_o7$F/F_o7$F(F\\o7$FIFin7,7$ FMF+7$FRF17$FWF17$FZF+7$FgnF=7$FZFA7$FWFD7$FRFD7$FMFA7$FdoF=7,7$FhuF+7 $F[vF17$F^vF17$FavF+7$FdvF=7$FavFA7$F^vFD7$F[vFD7$FhuFA7$F[wF=7,7$FhoF O7$F]pFT7$FbpFT7$FepFO7$FhpFin7$FepF\\o7$FbpF_o7$F]pF_o7$FhoF\\o7$FeqF in7,7$F(Fjo7$F/F_p7$F4F_p7$F7Fjo7$F:Fjp7$F7F]q7$F4F`q7$F/F`q7$F(F]q7$F IFjp7,7$FMFiq7$FRF\\r7$FWF\\r7$FZFiq7$FgnFar7$FZFcr7$FWFfr7$FRFfr7$FMF cr7$FdoFar7,7$FhuFiq7$F[vF\\r7$F^vF\\r7$FavFiq7$FdvFar7$FavFcr7$F^vFfr 7$F[vFfr7$FhuFcr7$F[wFar7,7$FhoF+7$F]pF17$FbpF17$FepF+7$FhpF=7$FepFA7$ FbpFD7$F]pFD7$FhoFA7$FeqF=7,7$FMFjo7$FRF_p7$FWF_p7$FZFjo7$FgnFjp7$FZF] q7$FWF`q7$FRF`q7$FMF]q7$FdoFjp7,7$FhuFjo7$F[vF_p7$F^vF_p7$FavFjo7$FdvF jp7$FavF]q7$F^vF`q7$F[vF`q7$FhuF]q7$F[wFjp7,7$FMFhs7$FRF[t7$FWF[t7$FZF hs7$FgnF`t7$FZFct7$FWFft7$FRFft7$FMFct7$FdoF`t7,7$FhuFhs7$F[vF[t7$F^vF [t7$FavFhs7$FdvF`t7$FavFct7$F^vFft7$F[vFft7$FhuFct7$F[wF`t-%'COLOURG6& %$RGBG$\")p:#R%F*$\")`B)e)F*$\")fqkdF*-%'CURVESG6&7$7$$\"$;\"F\"F*F]dl7$Fg`l$!++++17F*F^alFbal-F\\`l6&7$7$F[blFjp7 $F^blFjp7%7$FbblF`dlFidl7$FbblFcdlF^alFbal-F\\`l6&7$7$F``lF`t7$Fc`lF`t 7%7$Fg`l$!++++%f\"F*Fael7$Fg`l$!++++1;F*F^alFbal-F\\`l6&7$7$F[blF`t7$F ^blF`t7%7$FbblFdelF]fl7$FbblFgelF^alFbal-F\\`l6&7$7$F``lFin7$Fc`lFin7% 7$Fg`l$!++++%*>F*Fefl7$Fg`l$!++++1?F*F^alFbal-F\\`l6&7$7$F[blFin7$F^bl Fin7%7$FbblFhflFagl7$FbblF[glF^alFbal-%%TEXTG6%7$$\"$9\"FF*F\\ilFdilF]hl-Ffgl6%7$$\"+ @wt')=F*FdhlFjilF]hl-Ffgl6%7$$\"$'=FF*FfhlF]hl-Ffgl 6%7$Fjhl$!+)3_o'=F*F^ilF]hl-Ffgl6%7$FbilFf[nFdilF]hl-Ffgl6%7$FhilFa[nF jilF]hl-Ffgl6%7$F^jlFinF`jlF]hl-Ffgl6%7$Fhil$!+N**G#3#F*FfjlF]hl-Ffgl6 %7$Fbil$!+7z9L@F*F\\[mF]hl-Ffgl6%7$FjhlFi\\nF`[mF]hl-Ffgl6%7$FbhlFd\\n Fd[mF]hl-Ffgl6%7$Fh[mFinF[hlF]hl-Ffgl6%7$F]\\mFa[nFfhlF]hl-Ffgl6%7$Fb \\mFf[nF^ilF]hl-Ffgl6%7$Fg\\mFf[nFdilF]hl-Ffgl6%7$F\\]mFa[nFjilF]hl-Ff gl6%7$Fa]mFinF`jlF]hl-Ffgl6%7$F\\]mFd\\nFfjlF]hl-Ffgl6%7$Fg\\mFi\\nF\\ [mF]hl-Ffgl6%7$Fb\\mFi\\nF`[mF]hl-Ffgl6%7$F]\\mFd\\nFd[mF]hl-Ffgl6%7$$ \"$f\"FFF*F07 $$\"+,$)4>>F*F+7$$\"#>\"\"!$!#;F;7$F6$!+D&y(e;F*7$F3$!+_c5&p\"F*7$F.FB 7$F(F?7$$\"#@F;F<7,7$$\"+*p,4`\"F*$!+[Z@7u!\"*7$$\"+*p,4[\"F*$!+%[V*[q FO7$$\"+,$)4>9F*FS7$$\"+,$)4p8F*FM7$$\"$N\"!\"\"$F*F;7$FY$!+__y(e)FO7$ FV$!+;l0^*)FO7$FQF^o7$FKF[o7$$\"$b\"FhnFin7,7$FK$!+[Z@7MFO7$FQ$!+%[V*[ IFO7$FVFjo7$FYFgo7$Ffn$!\"%F;7$FY$!+__y(e%FO7$FV$!+;l0^\\FO7$FQFep7$FK Fbp7$FcoF_p7,7$$\"+*p,43\"F*$!+v9AT>F*7$$\"+*p,4.\"F*$!+[V*[!>F*7$$\"+ 1I)4p*FOFcq7$$\"+1I)4>*FOF^q7$$\"\"*F;$!#?F;7$Fiq$!+D&y(e?F*7$Ffq$!+_c 5&4#F*7$FaqFdr7$F\\qFar7$$\"#6F;F^r7,7$FKF+7$FQF07$FVF07$FYF+7$FfnF<7$ FYF?7$FVFB7$FQFB7$FKF?7$FcoF<7,7$$\"+*p,4`#F*FM7$$\"+*p,4[#F*FS7$$\"+, $)4>CF*FS7$$\"+,$)4pBF*FM7$$\"$N#FhnFin7$FatF[o7$F^tF^o7$F[tF^o7$FhsF[ o7$$\"$b#FhnFin7,7$FhsF+7$F[tF07$F^tF07$FatF+7$FdtF<7$FatF?7$F^tFB7$F[ tFB7$FhsF?7$F[uF<7,7$F\\qFgo7$FaqFjo7$FfqFjo7$FiqFgo7$F\\rF_p7$FiqFbp7 $FfqFep7$FaqFep7$F\\qFbp7$FirF_p7,7$FKF^q7$FQFcq7$FVFcq7$FYF^q7$FfnF^r 7$FYFar7$FVFdr7$FQFdr7$FKFar7$FcoF^r7,7$F(Fgo7$F.Fjo7$F3Fjo7$F6Fgo7$F9 F_p7$F6Fbp7$F3Fep7$F.Fep7$F(Fbp7$FGF_p7,7$FK$!+v9AT6F*7$FQ$!+[V*[5\"F* 7$FVF^x7$FYF[x7$Ffn$!#7F;7$FY$!+D&y(e7F*7$FV$!+_c5&H\"F*7$FQFix7$FKFfx 7$FcoFcx7,7$F\\qFM7$FaqFS7$FfqFS7$FiqFM7$F\\rFin7$FiqF[o7$FfqF^o7$FaqF ^o7$F\\qF[o7$FirFin7,7$FhsF^q7$F[tFcq7$F^tFcq7$FatF^q7$FdtF^r7$FatFar7 $F^tFdr7$F[tFdr7$FhsFar7$F[uF^r7,7$F(FM7$F.FS7$F3FS7$F6FM7$F9Fin7$F6F[ o7$F3F^o7$F.F^o7$F(F[o7$FGFin7,7$F\\qF[x7$FaqF^x7$FfqF^x7$FiqF[x7$F\\r Fcx7$FiqFfx7$FfqFix7$FaqFix7$F\\qFfx7$FirFcx7,7$F(F[x7$F.F^x7$F3F^x7$F 6F[x7$F9Fcx7$F6Ffx7$F3Fix7$F.Fix7$F(Ffx7$FGFcx7,7$F\\qF+7$FaqF07$FfqF0 7$FiqF+7$F\\rF<7$FiqF?7$FfqFB7$FaqFB7$F\\qF?7$FirF<7,7$FhsF[x7$F[tF^x7 $F^tF^x7$FatF[x7$FdtFcx7$FatFfx7$F^tFix7$F[tFix7$FhsFfx7$F[uFcx7,7$F(F ^q7$F.Fcq7$F3Fcq7$F6F^q7$F9F^r7$F6Far7$F3Fdr7$F.Fdr7$F(Far7$FGF^r7,7$F hsFgo7$F[tFjo7$F^tFjo7$FatFgo7$FdtF_p7$FatFbp7$F^tFep7$F[tFep7$FhsFbp7 $F[uF_p-%'COLOURG6&%$RGBG$\")p:#R%F*$\")`B)e)F*$\")fqkdF*-%'CURVESG6&7 $7$$\"$;\"FhnF_p7$$\"$G\"FhnF_p7%7$$\"++++c7F*$!++++SRFOFb`l7$Fg`l$!++ ++gSFO-%&STYLEG6#%,PATCHNOGRIDG-Fb_l6&Fd_l$F;F;Fdal$\"*++++\"F*-F\\`l6 &7$7$$\"$;#FhnF_p7$$\"$G#FhnF_p7%7$$\"++++cAF*Fi`lF]bl7$FbblF\\alF^alF bal-F\\`l6&7$7$F``lFin7$Fc`lFin7%7$Fg`l$!++++SzFOFibl7$Fg`l$!++++g!)FO F^alFbal-F\\`l6&7$7$F[blFin7$F^blFin7%7$FbblF\\clFecl7$FbblF_clF^alFba l-F\\`l6&7$7$F``lFcx7$Fc`lFcx7%7$Fg`l$!++++%>\"F*F]dl7$Fg`l$!++++17F*F ^alFbal-F\\`l6&7$7$F[blFcx7$F^blFcx7%7$FbblF`dlFidl7$FbblFcdlF^alFbal- F\\`l6&7$7$F``lF<7$Fc`lF<7%7$Fg`l$!++++%f\"F*Fael7$Fg`l$!++++1;F*F^alF bal-F\\`l6&7$7$F[blF<7$F^blF<7%7$FbblFdelF]fl7$FbblFgelF^alFbal-F\\`l6 &7$7$F``lF^r7$Fc`lF^r7%7$Fg`l$!++++%*>F*Fefl7$Fg`l$!++++1?F*F^alFbal-F \\`l6&7$7$F[blF^r7$F^blF^r7%7$FbblFhflFagl7$FbblF[glF^alFbal-%%TEXTG6% 7$$\"$9\"FhnF_pQ\"16\"-Fb_l6&Fd_lFealFdalFdal-Ffgl6%7$$\"+zBE86F*$!+Z1 5xJFOQ\"2F\\hlF]hl-Ffgl6%7$$\"+zBEV5F*$!+x3_oEFOQ\"3F\\hlF]hl-Ffgl6%7$ $\"+4iPn&*FOF\\ilQ\"4F\\hlF]hl-Ffgl6%7$$\"+3iPn))FOFdhlQ\"5F\\hlF]hl-F fgl6%7$$\"#')FhnF_pQ\"6F\\hlF]hl-Ffgl6%7$Fhil$!+`$**G#[FOQ\"7F\\hlF]hl -Ffgl6%7$Fbil$!+B\"z9L&FOQ\"8F\\hlF]hl-Ffgl6%7$FjhlFjjlQ\"9F\\hlF]hl-F fgl6%7$FbhlFdjlQ#10F\\hlF]hl-Ffgl6%7$$\"$9#FhnF_pF[hlF]hl-Ffgl6%7$$\"+ zBE8@F*FdhlFfhlF]hl-Ffgl6%7$$\"+zBEV?F*F\\ilF^ilF]hl-Ffgl6%7$$\"+@wtc> F*F\\ilFdilF]hl-Ffgl6%7$$\"+@wt')=F*FdhlFjilF]hl-Ffgl6%7$$\"$'=FhnF_pF `jlF]hl-Ffgl6%7$F\\]mFdjlFfjlF]hl-Ffgl6%7$Fg\\mFjjlF\\[mF]hl-Ffgl6%7$F b\\mFjjlF`[mF]hl-Ffgl6%7$F]\\mFdjlFd[mF]hl-Ffgl6%7$FiglFinF[hlF]hl-Ffg l6%7$Fbhl$!+Z15xrFOFfhlF]hl-Ffgl6%7$Fjhl$!+x3_omFOF^ilF]hl-Ffgl6%7$Fbi lFj^mFdilF]hl-Ffgl6%7$FhilFe^mFjilF]hl-Ffgl6%7$F^jlFinF`jlF]hl-Ffgl6%7 $Fhil$!+`$**G#))FOFfjlF]hl-Ffgl6%7$Fbil$!+B\"z9L*FOF\\[mF]hl-Ffgl6%7$F jhlF]`mF`[mF]hl-Ffgl6%7$FbhlFh_mFd[mF]hl-Ffgl6%7$Fh[mFinF[hlF]hl-Ffgl6 %7$F]\\mFe^mFfhlF]hl-Ffgl6%7$Fb\\mFj^mF^ilF]hl-Ffgl6%7$Fg\\mFj^mFdilF] hl-Ffgl6%7$F\\]mFe^mFjilF]hl-Ffgl6%7$Fa]mFinF`jlF]hl-Ffgl6%7$F\\]mFh_m FfjlF]hl-Ffgl6%7$Fg\\mF]`mF\\[mF]hl-Ffgl6%7$Fb\\mF]`mF`[mF]hl-Ffgl6%7$ F]\\mFh_mFd[mF]hl-Ffgl6%7$FiglFcxF[hlF]hl-Ffgl6%7$Fbhl$!+l+r<6F*FfhlF] hl-Ffgl6%7$Fjhl$!+)3_o1\"F*F^ilF]hl-Ffgl6%7$FbilF^cmFdilF]hl-Ffgl6%7$F hilFibmFjilF]hl-Ffgl6%7$F^jlFcxF`jlF]hl-Ffgl6%7$Fhil$!+N**G#G\"F*FfjlF ]hl-Ffgl6%7$Fbil$!+7z9L8F*F\\[mF]hl-Ffgl6%7$FjhlFadmF`[mF]hl-Ffgl6%7$F bhlF\\dmFd[mF]hl-Ffgl6%7$Fh[mFcxF[hlF]hl-Ffgl6%7$F]\\mFibmFfhlF]hl-Ffg l6%7$Fb\\mF^cmF^ilF]hl-Ffgl6%7$Fg\\mF^cmFdilF]hl-Ffgl6%7$F\\]mFibmFjil F]hl-Ffgl6%7$Fa]mFcxF`jlF]hl-Ffgl6%7$F\\]mF\\dmFfjlF]hl-Ffgl6%7$Fg\\mF admF\\[mF]hl-Ffgl6%7$Fb\\mFadmF`[mF]hl-Ffgl6%7$F]\\mF\\dmFd[mF]hl-Ffgl 6%7$FiglFF*FfhlF]hl-Ffgl6%7$Fjhl$!+)3_o'=F*F^ilF]hl-Ffgl6%7$FbilFf[n FdilF]hl-Ffgl6%7$FhilFa[nFjilF]hl-Ffgl6%7$F^jlF^rF`jlF]hl-Ffgl6%7$Fhil $!+N**G#3#F*FfjlF]hl-Ffgl6%7$Fbil$!+7z9L@F*F\\[mF]hl-Ffgl6%7$FjhlFi\\n F`[mF]hl-Ffgl6%7$FbhlFd\\nFd[mF]hl-Ffgl6%7$Fh[mF^rF[hlF]hl-Ffgl6%7$F] \\mFa[nFfhlF]hl-Ffgl6%7$Fb\\mFf[nF^ilF]hl-Ffgl6%7$Fg\\mFf[nFdilF]hl-Ff gl6%7$F\\]mFa[nFjilF]hl-Ffgl6%7$Fa]mF^rF`jlF]hl-Ffgl6%7$F\\]mFd\\nFfjl F]hl-Ffgl6%7$Fg\\mFi\\nF\\[mF]hl-Ffgl6%7$Fb\\mFi\\nF`[mF]hl-Ffgl6%7$F] \\mFd\\nFd[mF]hl-Ffgl6%7$$\"$f\"FhnF_pFd[mF]hl-Ffgl6%7$$\"+zBEj:F*Fdhl F`[mF]hl-Ffgl6%7$$\"+zBE$\\\"F*F\\ilF\\[mF]hl-Ffgl6%7$$\"+@wt19F*F\\il FfjlF]hl-Ffgl6%7$$\"+@wtO8F*FdhlF`jlF]hl-Ffgl6%7$$\"$J\"FhnF_pFjilF]hl -Ffgl6%7$Ff`nFdjlFdilF]hl-Ffgl6%7$Fa`nFjjlF^ilF]hl-Ffgl6%7$F\\`nFjjlFf hlF]hl-Ffgl6%7$Fg_nFdjlF[hlF]hl-Ffgl6%7$$\"$f#FhnF_pF`[mF]hl-Ffgl6%7$$ \"+zBEjDF*FdhlF\\[mF]hl-Ffgl6%7$$\"+zBE$\\#F*F\\ilFfjlF]hl-Ffgl6%7$$\" +@wt1CF*F\\ilF`jlF]hl-Ffgl6%7$$\"+@wtOBF*FdhlFjilF]hl-Ffgl6%7$$\"$J#Fh nF_pFdilF]hl-Ffgl6%7$F`cnFdjlF^ilF]hl-Ffgl6%7$F[cnFjjlFfhlF]hl-Ffgl6%7 $FfbnFjjlF[hlF]hl-Ffgl6%7$FabnFdjlFd[mF]hl-Ffgl6%7$Fb_nFinF\\[mF]hl-Ff gl6%7$Fg_nFe^mFfjlF]hl-Ffgl6%7$F\\`nFj^mF`jlF]hl-Ffgl6%7$Fa`nFj^mFjilF ]hl-Ffgl6%7$Ff`nFe^mFdilF]hl-Ffgl6%7$F[anFinF^ilF]hl-Ffgl6%7$Ff`nFh_mF fhlF]hl-Ffgl6%7$Fa`nF]`mF[hlF]hl-Ffgl6%7$F\\`nF]`mFd[mF]hl-Ffgl6%7$Fg_ nFh_mF`[mF]hl-Ffgl6%7$F\\bnFinFfjlF]hl-Ffgl6%7$FabnFe^mF`jlF]hl-Ffgl6% 7$FfbnFj^mFjilF]hl-Ffgl6%7$F[cnFj^mFdilF]hl-Ffgl6%7$F`cnFe^mF^ilF]hl-F fgl6%7$FecnFinFfhlF]hl-Ffgl6%7$F`cnFh_mF[hlF]hl-Ffgl6%7$F[cnF]`mFd[mF] hl-Ffgl6%7$FfbnF]`mF`[mF]hl-Ffgl6%7$FabnFh_mF\\[mF]hl-Ffgl6%7$Fb_nFcxF `jlF]hl-Ffgl6%7$Fg_nFibmFjilF]hl-Ffgl6%7$F\\`nF^cmFdilF]hl-Ffgl6%7$Fa` nF^cmF^ilF]hl-Ffgl6%7$Ff`nFibmFfhlF]hl-Ffgl6%7$F[anFcxF[hlF]hl-Ffgl6%7 $Ff`nF\\dmFd[mF]hl-Ffgl6%7$Fa`nFadmF`[mF]hl-Ffgl6%7$F\\`nFadmF\\[mF]hl -Ffgl6%7$Fg_nF\\dmFfjlF]hl-Ffgl6%7$F\\bnFcxFjilF]hl-Ffgl6%7$FabnFibmFd ilF]hl-Ffgl6%7$FfbnF^cmF^ilF]hl-Ffgl6%7$F[cnF^cmFfhlF]hl-Ffgl6%7$F`cnF ibmF[hlF]hl-Ffgl6%7$FecnFcxFd[mF]hl-Ffgl6%7$F`cnF\\dmF`[mF]hl-Ffgl6%7$ F[cnFadmF\\[mF]hl-Ffgl6%7$FfbnFadmFfjlF]hl-Ffgl6%7$FabnF\\dmF`jlF]hl-F fgl6%7$Fb_nFFhnQ#19F\\hlFbal-Ffgl6%7$F^doFbfoQ#20F\\h lFbal-%(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" "Curve 12" "Curve 13" "Curve 14" "Curve 15" "Curve 16" "Curve 17" "Curve 18" "Curve 19" "Curve 20" "Curve 21" "Curve 22" "Cur ve 23" "Curve 24" "Curve 25" "Curve 26" "Curve 27" "Curve 28" "Curve 2 9" "Curve 30" "Curve 31" "Curve 32" "Curve 33" "Curve 34" "Curve 35" " Curve 36" "Curve 37" "Curve 38" "Curve 39" "Curve 40" "Curve 41" "Curv e 42" "Curve 43" "Curve 44" "Curve 45" "Curve 46" "Curve 47" "Curve 48 " "Curve 49" "Curve 50" "Curve 51" "Curve 52" "Curve 53" "Curve 54" "C urve 55" "Curve 56" "Curve 57" "Curve 58" "Curve 59" "Curve 60" "Curve 61" "Curve 62" "Curve 63" "Curve 64" "Curve 65" "Curve 66" "Curve 67 " "Curve 68" "Curve 69" "Curve 70" "Curve 71" "Curve 72" "Curve 73" "C urve 74" "Curve 75" "Curve 76" "Curve 77" "Curve 78" "Curve 79" "Curve 80" "Curve 81" "Curve 82" "Curve 83" "Curve 84" "Curve 85" "Curve 86 " "Curve 87" "Curve 88" "Curve 89" "Curve 90" "Curve 91" "Curve 92" "C urve 93" "Curve 94" "Curve 95" "Curve 96" "Curve 97" "Curve 98" "Curve 99" "Curve 100" "Curve 101" "Curve 102" "Curve 103" "Curve 104" "Curv e 105" "Curve 106" "Curve 107" "Curve 108" "Curve 109" "Curve 110" "Cu rve 111" "Curve 112" "Curve 113" "Curve 114" "Curve 115" "Curve 116" " Curve 117" "Curve 118" "Curve 119" "Curve 120" "Curve 121" "Curve 122 " "Curve 123" "Curve 124" "Curve 125" "Curve 126" "Curve 127" "Curve 1 28" "Curve 129" "Curve 130" "Curve 131" "Curve 132" "Curve 133" "Curve 134" "Curve 135" "Curve 136" "Curve 137" "Curve 138" "Curve 139" "Cur ve 140" "Curve 141" "Curve 142" "Curve 143" "Curve 144" "Curve 145" "C urve 146" "Curve 147" "Curve 148" "Curve 149" "Curve 150" "Curve 151" "Curve 152" "Curve 153" "Curve 154" "Curve 155" "Curve 156" "Curve 157 " "Curve 158" "Curve 159" "Curve 160" "Curve 161" "Curve 162" "Curve 1 63" "Curve 164" "Curve 165" "Curve 166" "Curve 167" "Curve 168" "Curve 169" "Curve 170" "Curve 171" "Curve 172" "Curve 173" "Curve 174" "Cur ve 175" "Curve 176" "Curve 177" "Curve 178" "Curve 179" "Curve 180" "C urve 181" "Curve 182" "Curve 183" "Curve 184" "Curve 185" "Curve 186" "Curve 187" "Curve 188" "Curve 189" "Curve 190" "Curve 191" "Curve 192 " "Curve 193" "Curve 194" "Curve 195" "Curve 196" "Curve 197" "Curve 1 98" "Curve 199" "Curve 200" "Curve 201" "Curve 202" "Curve 203" "Curve 204" "Curve 205" "Curve 206" "Curve 207" "Curve 208" "Curve 209" "Cur ve 210" "Curve 211" "Curve 212" "Curve 213" "Curve 214" "Curve 215" "C urve 216" "Curve 217" "Curve 218" "Curve 219" "Curve 220" "Curve 221" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 90 "Also, we can use this procedur e to display only one element. For example, 11th element in " } {XPPEDIT 18 0 "D[20];" "6#&%\"DG6#\"#?" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "Grid(dihedral(20),11,1,1);" }} {PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6O-%)POLYGONSG6%76 7$$\"+_c5&4\"!\")$!+1I)4p$!\"*7$$\"+*p,43\"F*$!+[Z@7MF-7$$\"+D&y(e5F*$ !+1I)4>$F-7$$\"+*p,4.\"F*$!+%[V*[IF-7$$\"#5\"\"!$!\"$F@7$$\"+1I)4p*F-F ;7$$\"+[Z@7%*F-F67$$\"+1I)4>*F-F17$$\"+%[V*[!*F-F+7$$\"\"*F@$!\"%F@7$F M$!+%*p,4VF-7$FJ$!+__y(e%F-7$FG$!+%*p,4[F-7$FD$!+;l0^\\F-7$F>$!\"&F@7$ F9Fhn7$F4Fen7$F/FX7$F(FU7$$\"#6F@FR767$$\"+_c5X:F*F+7$$\"+*p,4`\"F*F17 $$\"+D&y(3:F*F67$$\"+*p,4[\"F*F;7$$\"$X\"!\"\"FA7$$\"+,$)4>9F*F;7$$\"+ v9A\"R\"F*F67$$\"+,$)4p8F*F17$$\"+[V*[N\"F*F+7$$\"$N\"FdpFR7$F_qFU7$F \\qFX7$FipFen7$FfpFhn7$FbpF[o7$F_pFhn7$F\\pFen7$FioFX7$FfoFU7$$\"$b\"F dpFR-%'COLOURG6&%$RGBG$\")p:#R%F*$\")`B)e)F*$\")fqkdF*-%'CURVESG6&7$7$ $\"$;\"FdpFR7$$\"$G\"FdpFR7%7$$\"++++c7F*$!++++SRF-Fas7$Ffs$!++++gSF-- %&STYLEG6#%,PATCHNOGRIDG-Far6&Fcr$F@F@Fct$\"*++++\"F*-%%TEXTG6%7$$\"$9 \"FdpFRQ\"16\"-Far6&FcrFdtFctFct-Fgt6%7$$\"+7z9L6F*$!+3iPnNF-Q\"2F]uF^ u-Fgt6%7$$\"+zBE86F*$!+Z15xJF-Q\"3F]uF^u-Fgt6%7$$\"+N**G#3\"F*$!+3iPnG F-Q\"4F]uF^u-Fgt6%7$$\"+zBEV5F*$!+x3_oEF-Q\"5F]uF^u-Fgt6%7$F>$!#EFdpQ \"6F]uF^u-Fgt6%7$$\"+4iPn&*F-F]wQ\"7F]uF^u-Fgt6%7$$\"+Z15x\"*F-FevQ\"8 F]uF^u-Fgt6%7$$\"+3iPn))F-F]vQ\"9F]uF^u-Fgt6%7$$\"+x3_o')F-FeuQ#10F]uF ^u-Fgt6%7$$\"#')FdpFRQ#11F]uF^u-Fgt6%7$F[y$!+#zBEV%F-Q#12F]uF^u-Fgt6%7 $Fex$!+`$**G#[F-Q#13F]uF^u-Fgt6%7$F_x$!+#zBE8&F-Q#14F]uF^u-Fgt6%7$Fiw$ !+B\"z9L&F-Q#15F]uF^u-Fgt6%7$F>$!#aFdpQ#16F]uF^u-Fgt6%7$F[wFizQ#17F]uF ^u-Fgt6%7$FcvFczQ#18F]uF^u-Fgt6%7$F[vF]zQ#19F]uF^u-Fgt6%7$FcuFgyQ#20F] uF^u-Fgt6%7$$\"$f\"FdpFRFcyF^u-Fgt6%7$$\"+7z9$e\"F*FeuFiyF^u-Fgt6%7$$ \"+zBEj:F*F]vF_zF^u-Fgt6%7$$\"+N**GK:F*FevFezF^u-Fgt6%7$$\"+zBE$\\\"F* F]wF[[lF^u-Fgt6%7$FbpFcwFa[lF^u-Fgt6%7$$\"+@wt19F*F]wFe[lF^u-Fgt6%7$$ \"+l+rn8F*FevFi[lF^u-Fgt6%7$$\"+@wtO8F*F]vF]\\lF^u-Fgt6%7$$\"+)3_oJ\"F *FeuFa\\lF^u-Fgt6%7$$\"$J\"FdpFRF\\uF^u-Fgt6%7$F`_lFgyFguF^u-Fgt6%7$F[ _lF]zF_vF^u-Fgt6%7$Ff^lFczFgvF^u-Fgt6%7$Fa^lFizF_wF^u-Fgt6%7$FbpF_[lFe wF^u-Fgt6%7$Fi]lFizF[xF^u-Fgt6%7$Fd]lFczFaxF^u-Fgt6%7$F_]lF]zFgxF^u-Fg t6%7$Fj\\lFgyF]yF^u-Fgt6%7$$\"$A\"Fdp$!#NFdpFcyFat-%(SCALINGG6#%,CONST RAINEDG-%*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" }} }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 81 "If we want to see its representa tion as a permutation, it can be done as follows:" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 17 "dihedral(20)[11];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#76\"#6\"#7\"#8\"#9\"#:\"#;\"#<\"#=\"#>\"#?\"\"\"\"\"#\" \"$\"\"%\"\"&\"\"'\"\"(\"\")\"\"*\"#5" }}}{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 dihedr al group " }{XPPEDIT 18 0 "D[n];" "6#&%\"DG6#%\"nG" }{TEXT -1 5 " has \+ " }{XPPEDIT 18 0 "2*n;" "6#*&\"\"#\"\"\"%\"nGF%" }{TEXT -1 20 " elemen ts. Using the" }{TEXT 412 5 " nops" }{TEXT -1 22 " command can test it : " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "nops(cyclic(12));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"#7" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "nops(dihedral(100));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$+#" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "Notice, that all elem ents 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 rotations, the other " }{TEXT 259 1 "n" }{TEXT -1 18 " are reflections. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 58 "To multiply elements, we can use the following procedure: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 86 "mult:=proc(a,b,g) loca l 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 example, " }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 21 "mult(3,7,cyclic(12));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "mul t(3,7,dihedral(4));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"&" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "mult(7,3,dihedral(4));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"&" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 13 "Cayley Tables" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 61 "The \+ following procedure displays the Cayley table of a group:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "cayley:=g->Matrix(nops(g),(i,j)->mu lt(i,j,g)):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 12 "For example," }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "cayley(dihedral(4));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")ozP<-%'MATRIXG6#7*7*\" \"\"\"\"#\"\"$\"\"%\"\"&\"\"'\"\"(\"\")7*F-F.F/F,F3F0F1F27*F.F/F,F-F2F 3F0F17*F/F,F-F.F1F2F3F07*F0F1F2F3F,F-F.F/7*F1F2F3F0F/F,F-F.7*F2F3F0F1F .F/F,F-7*F3F0F1F2F-F.F/F," }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 281 "It \+ is 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 \+ is a rotation. Another evident thing is that reflections are inverse t o 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 50 "isAbelian:=g->type(cayley(g) ,'Matrix'(symmetric)):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "i sAbelian(dihedral(4));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }} }{EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "For cyclic groups Cayley tables a re very symmetric:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "cayle y(cyclic(12));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6+\")/L)*= %)anythingG%'MatrixG%,rectangularG%.Fortran_orderG7\"\"\"#;\"\"\"\"#7F -" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 289 "It is a placeholder. By def ault, Maple shows them for matrices larger than 10x10. To work with th e matrix, one should right-click on the placeholder and use the contex t menu. In case we want to see 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 "%;" }}{PARA 11 "" 1 "" {XPPMATH 20 " 6#-%'RTABLEG6$\")/L)*=-%'MATRIXG6#7.7.\"\"\"\"\"#\"\"$\"\"%\"\"&\"\"' \"\"(\"\")\"\"*\"#5\"#6\"#77.F-F.F/F0F1F2F3F4F5F6F7F,7.F.F/F0F1F2F3F4F 5F6F7F,F-7.F/F0F1F2F3F4F5F6F7F,F-F.7.F0F1F2F3F4F5F6F7F,F-F.F/7.F1F2F3F 4F5F6F7F,F-F.F/F07.F2F3F4F5F6F7F,F-F.F/F0F17.F3F4F5F6F7F,F-F.F/F0F1F27 .F4F5F6F7F,F-F.F/F0F1F2F37.F5F6F7F,F-F.F/F0F1F2F3F47.F6F7F,F-F.F/F0F1F 2F3F4F57.F7F,F-F.F/F0F1F2F3F4F5F6" }}}{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));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 10 "Operations" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 63 "If we need to do a lot of calculations in some specific group, " }{XPPEDIT 18 0 "D[4]; " "6#&%\"DG6#\"\"%" }{TEXT -1 92 ", for instance, we can define specia l multiplication 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 specify 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 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"#" }}} {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;" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#\"\"%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "2 &*5&*&-2;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 144 "One has to be very careful with that though, sin ce the answers depend on the group, and for calculations in other grou ps 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;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "2&* 5&*&-2;" }{TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"&" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Exe rcises" }}{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 ". Draw 15th element of " }{XPPEDIT 18 0 "D[24];" "6#&%\"D G6#\"#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 tab les of " }{XPPEDIT 18 0 "D[3];" "6#&%\"DG6#\"\"$" }{TEXT -1 5 " and " }{XPPEDIT 18 0 "C[6];" "6#&%\"CG6#\"\"'" }{TEXT -1 28 ". Are these gro ups Abelian? " }}{PARA 14 "" 0 "" {TEXT -1 0 "" }{TEXT 305 1 "5" } {TEXT -1 7 ". Find " }{XPPEDIT 18 0 "a*b*a^`-1`;" "6#*(%\"aG\"\"\"%\"b GF%)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 ro tation, or a reflection, 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 pri me 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 since " }{XPPEDIT 18 0 "U;" "6#%\"UG" }{TEXT -1 48 " is rese rved in Maple 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);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7&\"\"\"\"\"&\"\"(\"#6" }}}{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));" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7`q/\"\"\"F%/\"\"#F%/\" \"$F'/\"\"%F'/\"\"&F+/\"\"'F'/\"\"(F//\"\")F+/\"\"*F//\"#5F+/\"#6F7/\" #7F+/\"#8F;/\"#9F//\"#:F3/\"#;F3/\"#FG/\"#?F3/\"#@F;/\" #AF7/\"#BFO/\"#CF3/\"#DFK/\"#EF;/\"#FFG/\"#GF;/\"#HFen/\"#IF3/\"#JFin/ \"#KFC/\"#LFK/\"#MFC/\"#NFS/\"#OF;/\"#PFeo/\"#QFG/\"#RFS/\"#SFC/\"#TF] p/\"#UF;/\"#VFap/\"#WFK/\"#XFS/\"#YFO/\"#ZFip/\"#[FC/\"#\\Fap/\"#]FK/ \"#^F]o/\"#_FS/\"#`Feq/\"#aFG/\"#bF]p/\"#cFS/\"#dFeo/\"#eFen/\"#fFar/ \"#gFC/\"#hFer/\"#iFin/\"#jFeo/\"#kF]o/\"#lF]q/\"#mFK/\"#nFas/\"#oF]o/ \"#pFep/\"#qFS/\"#rFis/\"#sFS/\"#tF]t/\"#uFeo/\"#vF]p/\"#wFeo/\"#xFer/ \"#yFS/\"#zFit/\"#!)F]o/\"#\")Fiq/\"##)F]p/\"#$)Fau/\"#%)FS/\"#&)F]s/ \"#')Fap/\"#()F]r/\"#))F]p/\"#*)F]v/\"#!*FS/\"#\"*F]t/\"##*Fep/\"#$*Fe r/\"#%*Fip/\"#&*F]t/\"#'*F]o/\"#(*F]w/\"#)*Fap/\"#**Fer/\"$+\"F]p" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "The number theory package has a bu ilt in function " }{TEXT 261 3 "phi" }{TEXT -1 19 " for these numbers: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "with(numtheory):" }} {PARA 7 "" 1 "" {TEXT -1 69 "Warning, the protected name order has bee n redefined and unprotected\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "phi(78);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#C" }}}{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 using the foll owing 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);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")'RB!=-%'MATRIXG6#7.7.\"\"\"\"\"&\"#6\"#8 \"#<\"#>\"#B\"#D\"#H\"#J\"#P\"#T7.F-F3F/F2F,F.F5F7F1F4F0F67.F.F/F6F0F1 F7F,F2F3F-F4F57.F/F2F0F,F.F6F-F5F7F3F1F47.F0F,F1F.F6F4F/F-F5F2F7F37.F1 F.F7F6F4F3F0F/F-F,F5F27.F2F5F,F-F/F0F3F4F6F7F.F17.F3F7F2F5F-F/F4F6F.F1 F,F07.F4F1F3F7F5F-F6F.F,F0F2F/7.F5F4F-F3F2F,F7F1F0F6F/F.7.F6F0F4F1F7F5 F.F,F2F/F3F-7.F7F6F5F4F3F2F1F0F/F.F-F," }}}{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 procedur e:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "invU:=proc(a,n) local v; igcdex(a,n,'v'); v mod n end:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "invU(23,42);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#6 " }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 19 "Matrix Groups mod n" }} {EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "Maple is good for calculations wit h matrix groups." }{TEXT 321 0 "" }{TEXT -1 45 " The following example s 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]]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"AG-%'RTA BLEG6$\")o " 0 "" {MPLTEXT 1 0 20 "B:=Inverse(A) mod 5;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"BG-%'RTABLEG6$\")GT\"*=-%'MATRIXG6#7$7$\"\"$\"\"\"7 $\"\"%\"\"#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "A.B;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")s)*o>-%'MATRIXG6#7$7$\" #6\"\"&7$\"#DF," }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "Map(x->x mod 5,%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")s)*o>-%'M ATRIXG6#7$7$\"\"\"\"\"!7$F-F," }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "A^(-1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")Sv2=-%' MATRIXG6#7$7$!\"#\"\"\"7$#\"\"$\"\"##!\"\"F1" }}}{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$\"\"#&%\"ZG6#%\"nG" }{TEXT -1 27 " can be defined as follow s:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 137 "gl2:=n->select(A->ev alb(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 ar e the numbers of elements of some of them:" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 37 "for N from 2 to 6 do nops(sl2(N)) od;" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#\"\"'" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#C" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#[" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$?\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$W\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "for N from 2 to 6 do nops(gl2(N)) od;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"'" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#[" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#'*" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$![" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"$)G" }}} {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));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#7(-%'matrixG6#7$7$\"\"\"\"\"!7$F*F)-F% 6#7$F(7$F)F)-F%6#7$F+F(-F%6#7$F+F/-F%6#7$F/F(-F%6#7$F/F+" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "matrix(gl2(6)[256]);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#-%'matrixG6#7$7$\"\"$\"\"&7$\"\"%\"\"\"" }}} {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));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'matrixG6#7$7$\" \")\"\"!7$\"#5\"\"'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "Inverse el ements 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 espe cially 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 "mat rix(invSL([[3,4],[5,7]],20));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'ma trixG6#7$7$\"\"(\"#;7$\"#:\"\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "matrix(invGL([[1,2],[3,4]],25));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'matrixG6#7$7$\"#B\"\"\"7$\"#9\"#7" }}}{SECT 0 {PARA 5 "" 0 " " {TEXT -1 5 "Note." }}{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 "matrix()" }{TEXT -1 115 ", if we want to see the output a s a matrix. Otherwise 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 comman d " }{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 "We'll define a group " }{TEXT 452 1 "G" }{TEXT -1 67 " \+ in a standard way, 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 chec king if the rows of the Cayley table are permutations of the group ele ments:" }}}{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 assoc iativity:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 237 "isAssociative :=proc(g,m) local 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) end:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 87 "The following example shows that these two procedures are not enough to define a gr oup." }}}{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 arbitrary 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 elements of " }{TEXT 379 1 "g" }{TEXT -1 29 ". It is not a group, b ecause " }{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 \+ trivial 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 );" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "isAssociative(\{0,1\},(a,b)->b);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 125 " The following Theorem shows that an additional property of the existen ce of a right identity 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 associat ive 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 " the re is a unique element " }{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 "e h" }{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 identity as well. By " }{TEXT 395 1 "i" }{TEXT -1 32 "), the re exists unique 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 t hat " }{TEXT 394 6 "gh = e" }{TEXT -1 5 " and " }{TEXT 397 6 "hx = e" }{TEXT -1 8 ". Then, " }{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 othe r 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 ". Since the operation is associative and there exists an identity and inverses 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 proce dure is checking if a set " }{TEXT 408 1 "g" }{TEXT -1 19 " with an op eration " }{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);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 53 "Finally, we can introduce a new Maple type - a group:" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 183 "`type/group`:=proc(g) \nty pe(g,list) and nops(g)=2 and (type(g[1],list) or type(g[1],set)) and t ype(g[2],procedure) and isCP(op(g)) and isAssociative(op(g)) and hasRi ghtId(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);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "type([[$1..8],(a,b)->mult(a,b,dihedral(4))],group); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "type([sl2(3),(A,B)->mm(A,B,3)],group);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "type([[$0..9],(a,b)->a+b mod 10],group);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 32 "If we k now that the set or list " }{TEXT 322 1 "g" }{TEXT -1 20 " with the op eration " }{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 "Id:=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)));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'matrixG6# 7$7$\"\"\"\"\"!7$F)F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 51 "ma trix(Inv([[1,2],[3,4]],gl2(5),(a,b)->mm(a,b,5)));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'matrixG6#7$7$\"\"$\"\"\"7$\"\"%\"\"#" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "The Cayley table can be displayed as foll ows:" }}}{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, for " }{XPPEDIT 18 0 "Z[10];" "6#&%\"ZG6#\"# 5" }{TEXT -1 2 ": " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "cayle yTable([$0..9],(a,b)->a+b mod 10);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# -%'RTABLEG6$\")%)ow<-%'MATRIXG6#7,7,\"\"!\"\"\"\"\"#\"\"$\"\"%\"\"&\" \"'\"\"(\"\")\"\"*7,F-F.F/F0F1F2F3F4F5F,7,F.F/F0F1F2F3F4F5F,F-7,F/F0F1 F2F3F4F5F,F-F.7,F0F1F2F3F4F5F,F-F.F/7,F1F2F3F4F5F,F-F.F/F07,F2F3F4F5F, F-F.F/F0F17,F3F4F5F,F-F.F/F0F1F27,F4F5F,F-F.F/F0F1F2F37,F5F,F-F.F/F0F1 F2F3F4" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 84 "We can check if the gro up is Abelian by checking if the Cayley table is symmetric: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 66 "isAbelianGroup:=(g,m)->type( cayleyTable(g,m),'Matrix'(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);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "i sAbelianGroup(sl2(2),(a,b)->mm(a,b,2));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 20 "Redefining of Groups" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 245 "If we knew the group i dentity and the inverses, we can save time in many calculations. That' s why it is convenient to add the identity and the procedure finding t he inverse elements to the group definition. We define an extended gro up as a list " }{TEXT 446 1 "G" }{TEXT -1 33 " containing four element s, a set " }{TEXT 447 1 "G" }{TEXT -1 41 "[1], a binary operation (mul tiplication) " }{TEXT 448 1 "G" }{TEXT -1 18 "[2], the identity " } {TEXT 449 1 "G" }{TEXT -1 39 "[3], and the unary 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,li st) 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 operations repeatedly many times for the groups we know. So we can redefine the groups, includin g the operations, the identities, and the inverses in their definition s. I'll do that in the order they have appeared in this manual, starti ng 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)->mult(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->invU(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->inv SL(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),extendedG roup);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 32 "type(Dihedral(5),extendedGroup);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "type(Un(12),extendedGroup);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "t ype(GL2(2),extendedGroup);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "type(SL2(3),extendedGro up);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 26 "type(Z(20),extendedGroup);" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "Cayle y 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))); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6$\")%Q&p>-%'MATRIXG6#7( 7(-%'matrixG6#7$7$\"\"\"\"\"!7$F2F1-F-6#7$F07$F1F1-F-6#7$F3F0-F-6#7$F3 F7-F-6#7$F7F0-F-6#7$F7F37(F4F,F;F8FAF>7(F8F>F,FAF4F;7(F;FAF4F>F,F87(F> F8FAF,F;F47(FAF;F>F4F8F," }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 111 "The \+ same as we did before, we can check if the group is Abelian by checkin g 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));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "IsAbelian(Un( 15));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "IsAbelian(GL2(3));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}{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 ope ration " }{TEXT 463 1 "G" }{TEXT -1 95 "[2], can be easily converted t o the extended group by adding the identity and inverse element: " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 92 "`convert/extendedGroup`:=pro c(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],extende dGroup):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "type(%,extended Group);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}}{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 elements of gr oups " }{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$\")!ej z\"-%'MATRIXG6#7$7$\"#B\"#X7$\"#c\"#y" }{TEXT -1 7 " and " } {XPPEDIT 18 0 "RTABLE(17791708,MATRIX([[75, 11], [23, 51]]));" "6#-%'R TABLEG6$\")3 " 0 "" {MPLTEXT 1 0 12 "order(7,15);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"% " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "order(31,42);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"'" }}}{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 \+ found 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);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7&\"\"\"\"\"(\"\"%\"#8" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "cycleU(31,42);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7(\"\"\"\"#J\"#P\"#8\"#D\"#>" }}}{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) group " }{TEXT 413 1 " g" }{TEXT -1 44 " can be found using the following procedure:" }}} {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 example, the cyc lic subgroup generated by 10 in " }{XPPEDIT 18 0 "Z[25];" "6#&%\"ZG6# \"#D" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "Cyc le(10,Z(25));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7'\"\"!\"#5\"#?\"\"& \"#:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 17 "Another example, " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "map(matrix,Cycle([[1,2],[3,4 ]],GL2(5)));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*-%'matrixG6#7$7$\"\" \"\"\"!7$F*F)-F%6#7$7$F)\"\"#7$\"\"$\"\"%-F%6#7$7$F0F*7$F*F0-F%6#7$7$F 0F37$F)F2-F%6#7$7$F3F*7$F*F3-F%6#7$7$F3F27$F0F)-F%6#7$7$F2F*7$F*F2-F%6 #7$7$F2F)7$F3F0" }}}{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));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\")" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "Ord([[2,3],[4,5]],GL2(11));" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#\"#g" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "Ord(715,Z(1001));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"(" }}}} {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 determined as follows:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 137 "CentralizerE:=proc(a,G) local i,v;\nv:=[]; fo r 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 ex ample, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "CentralizerE(8,C yclic(8));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*\"\"\"\"\"#\"\"$\"\"% \"\"&\"\"'\"\"(\"\")" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "Cen tralizerE(8,Dihedral(4));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7&\"\"\" \"\"$\"\"'\"\")" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 20 "The centralize r 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) loc al i,j,v; \nv:=[]; for 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 "CentralizerS([7,8],Dihedral(4));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"\"\"\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 44 "T he 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));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7#\"\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 " Center(Dihedral(10));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"\"\"\"' " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "map(matrix,Center(GL2(3 )));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$-%'matrixG6#7$7$\"\"\"\"\"!7 $F*F)-F%6#7$7$\"\"#F*7$F*F0" }}}{SECT 0 {PARA 5 "" 0 "" {TEXT -1 5 "No te." }}{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 c ommand, Centralizer, for both cases? The problem is that some elements of a group can be equal to some 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 Centralizer(\{1,2\}) be in that case? The \+ centralizer of the element \{1,2\}, " }{TEXT 444 12 "CentralizerE" } {TEXT -1 49 "(\{1,2\}), or the centralizer of the subset \{1,2\}, " } {TEXT 445 12 "CentralizerS" }{TEXT -1 138 "(\{1,2\})? Since we can't d istinguish between these two cases by checking the type of an argument , we need two different commands for that. " }}}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 15 "A Subgroup Test" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 89 "According to Theorem 3.3 on p. 62 of Dr. Gallian's text, to test w hether 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 62 "isSub group:=(h,G)->\{op(h)\} subset \{op(G[1])\} 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));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "isSubgroup(Cycle([[1,2],[2,0]],GL2(5)),SL2(5));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 86 "Certainly, cyclic subgroups are subgroups :-) as well as \+ the center and centralizers: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "isSubgroup(CentralizerE(11,Dihedral(6)),Dihedral(6));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 70 "isSubgroup(CentralizerS(\{[[1,2],[3,4]],[[1,3],[2,4]] \},GL2(5)),GL2(5));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "isSubgroup(Center(SL2(4)),SL 2(4));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%%trueG" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 29 "Finally, an opposite example:" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 26 "isSubgroup(Z(5)[1],Z(10));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%&falseG" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 9 "Ex ercises" }}{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#&%\"ZG 6#\"#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 the cyclic subgroup of " }{TEXT 436 1 "U" }{TEXT -1 23 "(14 5) 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 cy clic 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 by " }{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 centrali zer of 3 in the dihedral 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 the 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 " generator s. To find them, we can use procedure " }{TEXT 485 2 "un" }{TEXT -1 14 ". For example," }{TEXT 486 2 " " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "un(20);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*\"\"\"\" \"$\"\"(\"\"*\"#6\"#8\"#<\"#>" }}}{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 they exist, are called " }{TEXT 478 15 "primitive r oots" }{TEXT -1 5 " mod " }{TEXT 479 1 "n" }{TEXT -1 46 ". One of them can be found using the function " }{TEXT 481 8 "primroot" }{TEXT -1 10 " from the " }{TEXT 482 9 "numtheory" }{TEXT -1 60 " package that w e already loaded in section 2. For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "primroot(43);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6 #\"\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "It fails when the group " }{TEXT 483 1 "U" }{TEXT -1 1 "(" }{TEXT 484 1 "n" }{TEXT -1 62 ") i s not cyclic, so it doesn't have a generator. For example, " }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "primroot(45);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#%%FAILG" }}}{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);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<.\"\"$\"\"&\" #7\"#=\"#>\"#?\"#E\"#G\"#H\"#I\"#L\"#M" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "primroots(45);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<#% %FAILG" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "The number of generator s 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 cyclic group. For example, " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "phi(phi(43));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#7" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT -1 18 "Elements of 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);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*\"\"&\"#:\"#N\"#X\"#b\"#l\"#&)\"#&*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 63 "The following procedure counts the number of el ements 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 to 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 elem ents of order 2 in " }{TEXT 545 1 "U" }{TEXT -1 5 "(45):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "nordU(2,45);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "It immedi ately implies that " }{TEXT 495 1 "U" }{TEXT -1 164 "(45) is not a cyc lic group, because a cyclic group might have either 0 elements of orde r 2 if it has an odd order, or 1 element of order 2 if it has an even \+ order. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 63 "The following procedur e 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, th e number of elements of order 10 in " }{TEXT 498 2 "SL" }{TEXT -1 4 "( 2, " }{XPPEDIT 18 0 "Z[5];" "6#&%\"ZG6#\"\"&" }{TEXT -1 2 "):" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "Nord(10,SL2(5));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#C" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 12 "Notice that " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "phi(10);" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"%" }}}{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 supposed to be accordin g to the Corollary on p. 80 of Dr. Gallian's book. " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 61 "Another example, the number of elements of orde r 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 "fo r n from 2 to 6 do Nord(2,GL2(n)) od;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#8" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#F" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#J" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"#b" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 29 "Try to find this sequence in " }{URLLINK 17 "Neil Sloane's On-Line En cyclopedia of Integer Sequences" 4 "http://akpublic.research.att.com/~ njas/sequences/" "" }{TEXT -1 166 ". Certainly, for every specific gro up, one can write a program calculating the number of elements of give n order faster. For instance, for the elements 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 "ord2 inGL2:=proc(n) local a,b,c,d,N; N:=0;\nfor a from 0 to n-1 do for b fr om 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 extended group " }{TEXT 501 1 "G" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 126 "Nord list:=proc(d,g) local i, v; v:=[];\nfor i from 1 to nops(g[1]) do if O rd(g[1][i],g)=d then v:=[op(v),g[1][i]] fi 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)));" }}{PARA 12 "" 1 "" {XPPMATH 20 "6#7A-%'matrixG6#7$7$\"\"\"\"\"!7$F*\"\"%-F%6#7$F(7$F)F,-F %6#7$F(7$\"\"#F,-F%6#7$F(7$\"\"$F,-F%6#7$F(7$F,F,-F%6#7$7$F,F*7$F*F)-F %6#7$FB7$F)F)-F%6#7$FB7$F5F)-F%6#7$FB7$F:F)-F%6#7$FB7$F,F)-F%6#7$FBF+- F%6#7$FCF(-F%6#7$FGF+-F%6#7$FK7$F5F:-F%6#7$FO7$F5F5-F%6#7$FSFC-F%6#7$7 $F*F57$F:F*-F%6#7$7$F)F5F+-F%6#7$F^o7$F)F:-F%6#7$7$F:F5Fjo-F%6#7$7$F,F 5FC-F%6#7$7$F*F:7$F5F*-F%6#7$F^pF+-F%6#7$Fjn7$F,F:-F%6#7$7$F:F:Ffp-F%6 #7$FbqFC-F%6#7$F+FB-F%6#7$F0F+-F%6#7$F4Ffq-F%6#7$F9Fbp-F%6#7$F>FC" }}} }{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(networ ks):" }}{PARA 7 "" 1 "" {TEXT -1 43 "Warning, the name arrow has been \+ redefined\n" }}{PARA 7 "" 1 "" {TEXT -1 93 "Warning, these names have \+ been redefined: dodecahedron, icosahedron, octahedron, tetrahedron\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 22 "A subgroup lattice of " } {XPPEDIT 18 0 "Z[n];" "6#&%\"ZG6#%\"nG" }{TEXT -1 44 " can be drawn us ing 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->add(ifactors (a)[2,i,2],i=1..nops(ifactors(a)[2]));\nL:=seq(convert(select(a->evalb (len(a)=i),d),list),i=0..len(n));\nfor i from 1 to len(n) do for j fro m 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 "subZ(30);" }}{PARA 13 "" 1 "" {GLPLOT2D 400 300 300 {PLOTDATA 2 "6?-%%TEXTG6$7$$\"\"#\"\" !$!#H!\"\"Q%<15>6\"-F$6$7$$\"\"\"F)$!\"*F,Q$<1>F.-%'POINTSG6#7$$F)F)$! \"#F)-F86#7$F2$!\"%F)-F$6$7$F2$!$3%F=Q$<0>F.-F$6$7$F2F*Q%<10>F.-F86#7$ F'$!\"$F)-F86#7$F2FP-F$6$7$F;F*Q$<6>F.-F$6$7$F'$!#>F,Q$<5>F.-F86#7$F;F P-F$6$7$F2FfnQ$<3>F.-F86#7$F'F<-F$6$7$F;FfnQ$<2>F.-F86#7$F2F<-F86#7$F2 $F,F)-%'CURVESG6$7$FOF@-%'COLOURG6&%$RGBGF)$\"#5F,F)-F_p6$7$FioFOFbp-F _p6$7$FboFTFbp-F_p6$7$F:FTFbp-F_p6$7$FioF[oFbp-F_p6$7$F:F[oFbp-F_p6$7$ F\\pFboFbp-F_p6$7$F\\pFioFbp-F_p6$7$F\\pF:Fbp-F_p6$7$FboFOFbp-F_p6$7$F [oF@Fbp-F_p6$7$FTF@Fbp-%*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" "Curve 13" "Curve 14" "Curve 15" "Curve 16" "Curve 17 " "Curve 18" "Curve 19" "Curve 20" "Curve 21" "Curve 22" "Curve 23" "C urve 24" "Curve 25" "Curve 26" "Curve 27" "Curve 28" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 85 "It looks like a cube, doesn't it? Even more aft er rotating the picture by 90 degrees:" }}}{EXCHG {PARA 0 "> " 0 "" {M