{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 "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "Help Normal" -1 30 "Times" 1 12 0 0 0 0 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 256 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 257 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 258 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }{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 0 1 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 "" 18 262 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 263 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 264 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 265 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 266 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 267 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 268 "" 1 14 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 269 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 270 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 271 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 272 "" 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 }{CSTYLE "" -1 273 "" 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 }{CSTYLE "" -1 274 "" 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 }{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 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 277 "" 0 1 0 0 0 0 0 1 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 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 282 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 283 "" 1 14 0 0 0 0 0 0 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 1 }{CSTYLE "" -1 285 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 286 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 287 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 }{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 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 292 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 293 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 294 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 295 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 296 "" 1 14 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 297 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 298 "" 0 14 0 0 0 0 0 0 1 0 0 0 0 0 0 1 }{CSTYLE "" -1 299 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 300 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 301 "" 0 1 0 0 0 0 0 1 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 1 }{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 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 307 "" 0 1 0 0 0 0 0 1 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 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 310 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 311 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 312 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 313 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 314 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 315 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 316 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 317 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 }{CSTYLE "" 18 318 "" 0 1 0 0 0 0 0 2 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 1 }{CSTYLE "" -1 320 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 321 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 322 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 323 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 324 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 325 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 326 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 327 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 328 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 329 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 330 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 331 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 332 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 333 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 334 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 335 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 336 "" 0 1 0 0 0 0 1 0 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 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 339 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 340 "" 0 1 0 0 0 0 1 0 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 1 }{CSTYLE "" -1 342 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 343 "" 0 1 0 0 0 0 0 0 1 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 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 354 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 355 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 356 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 357 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 358 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 359 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 360 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 361 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 362 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 363 "" 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 364 "" 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 365 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 366 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 367 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 368 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 369 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" 30 370 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 } {CSTYLE "" 30 371 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 }{CSTYLE "" 30 372 "" 0 1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 }{CSTYLE "" 30 373 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" 30 374 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" 30 375 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 376 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 377 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 378 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 379 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 380 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 381 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 382 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 383 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 384 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 385 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 386 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 387 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 388 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 389 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 390 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 391 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 392 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 393 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 394 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 395 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 396 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 397 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 398 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 399 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 400 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 401 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 402 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 403 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 404 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 405 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 } {CSTYLE "" -1 406 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 407 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 408 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 409 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 410 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 411 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{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 0 1 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 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 417 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 418 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 419 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 420 "" 0 1 0 0 0 0 0 1 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 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 423 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 424 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 425 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 } {CSTYLE "" -1 426 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 427 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 428 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 429 "" 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 430 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 } {CSTYLE "" -1 431 "" 0 1 0 0 0 0 1 0 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 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Tim es" 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 "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 "Normal" -1 256 1 {CSTYLE "" -1 -1 "Times " 1 12 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 } {PSTYLE "Title" -1 257 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }3 1 0 0 12 12 1 0 1 0 2 2 19 1 }{PSTYLE "Heading 2" -1 258 1 {CSTYLE "" -1 -1 "Times" 1 14 0 0 0 1 2 1 1 2 2 2 1 1 1 1 }1 1 0 0 8 2 1 0 1 0 2 2 0 1 }{PSTYLE "Normal" -1 259 1 {CSTYLE "" -1 -1 "T imes" 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 } } {SECT 0 {EXCHG {PARA 257 "" 0 "" {TEXT -1 9 "Lecture 4" }}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 42 "Maple 6, 7, and 8 versus Previous Version s" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 50 "Let's discuss once more some \+ differences between " }{TEXT 256 15 "Maple 6, 7, 8 " }{TEXT 258 24 " and previous versions. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 " " 0 "" {TEXT -1 15 "In versions of " }{TEXT 414 5 "Maple" }{TEXT -1 8 " before " }{TEXT 413 7 "Maple 6" }{TEXT -1 16 " :\n\ninstead of " } {TEXT 344 6 "end if" }{TEXT -1 15 " one must use " }{TEXT 345 2 "fi" }{TEXT -1 14 ",\ninstead of " }{TEXT 346 3 "end" }{TEXT -1 1 " " } {TEXT 347 4 "proc" }{TEXT -1 15 " one must use " }{TEXT 348 3 "end" } {TEXT -1 14 ",\ninstead of " }{TEXT 349 6 "end do" }{TEXT -1 15 " one must use " }{TEXT 350 2 "od" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 12 "instead of " }{TEXT 351 16 "return statement" }{TEXT -1 14 " one must use " }{TEXT 352 17 "RETURN(statement)" }{TEXT -1 3 ".\n \n" }{TEXT 409 14 "Maple 6, 7, 8" }{TEXT -1 52 " do, however, allow o ne to use the old short forms " }{TEXT 353 2 "od" }{TEXT -1 2 ", " } {TEXT 354 2 "fi" }{TEXT -1 5 " and " }{TEXT 355 3 "end" }{TEXT -1 10 " . In fact " }{TEXT 356 3 "end" }{TEXT -1 65 " alone will work for any \+ of these so-called delimiters. Thus in " }{TEXT 410 14 "Maple 6, 7, \+ 8" }{TEXT -1 24 " we would usually write:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 96 "f:=proc(x) \n if x \+ > 0 then \n return sin(x); \n else \n return cos(x); \n end if; \+ \nend proc:\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 7 "But in " }{TEXT 257 7 "Maple V" }{TEXT -1 47 " we MUST write the same procedure as fo llows:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 89 "f:=proc(x) \n \+ if x > 0 then \n RETURN(sin(x)); \n else \n RETURN(cos(x)); \n f i; \nend:\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 29 "The latter will al so work in " }{TEXT 411 15 "Maple 6, 7, 8." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 36 "Another major innovation began \+ with " }{TEXT 397 7 "Maple 6" }{TEXT -1 18 " and continued in " } {TEXT 398 7 "Maple 7" }{TEXT -1 5 " and " }{TEXT 412 1 "8" }{TEXT -1 20 " is the new package " }{TEXT 395 15 "LinearAlgebra. " }{TEXT -1 21 "In previous versions " }{TEXT 399 5 "Maple" }{TEXT -1 22 " has a p ackage called " }{TEXT 396 6 "linalg" }{TEXT -1 154 " which was the on ly way to deal with linear algebra problems such as computing rank, de terminants, jordan canonical forms, etc. Although the old package " } {TEXT 415 6 "linalg" }{TEXT -1 50 " is still available it is recommend that one use " }{TEXT 416 13 "LinearAlgebra" }{TEXT -1 71 ". [If yo u are impatient to get started on linear algebra you may type " } {TEXT 417 13 "with(linalg);" }{TEXT -1 4 " or " }{TEXT 418 20 "with(Li nearAlgebra);" }{TEXT -1 107 " and this will produce a list of procedu res that may be used after each of these commands is executed. Use " } {TEXT 419 1 "?" }{TEXT -1 49 " to see what any command in either packa ge does.]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 27 "The Concatenation Operator " }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 26 "Another difference is the " }{TEXT 259 22 "concatenation operator" }{TEXT 267 2 ". " }{TEXT -1 18 " In versio n since " }{TEXT 420 7 "Maple 6" }{TEXT -1 3 ", " }{TEXT 357 6 "x || \+ y" }{TEXT -1 36 " gives the concatenation of strings " }{TEXT 421 1 "x " }{TEXT -1 5 " and " }{TEXT 358 1 "y" }{TEXT -1 48 ". In previous ver sions of Maple it was given by " }{TEXT 265 3 "x.y" }{TEXT -1 92 ". C oncatenation is useful for forming a large number of variables. Here's a simple example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "for i from 1 to 5 do\n x||i:=i^2;\nod;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 76 "We have created the four variables x1,x2,x3,x4 and assigned to \+ xi the value " }{XPPEDIT 18 0 "i^2;" "6#*$%\"iG\"\"#" }{TEXT -1 1 "." }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "x1,x2,x3,x4;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 " " }}{PARA 0 "" 0 "" {TEXT 268 79 "The Maple help page for || states th at the use of this operator is discouraged." }{TEXT -1 124 " In Lectu re 3 we discussed how to use indexed variables. In the next section we say a little more about indexed variables. " }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 8 "Usually " } {TEXT 400 9 "cat(x,y) " }{TEXT -1 14 "is the same as" }{TEXT 401 7 " x || y" }{TEXT -1 16 ". The function " }{TEXT 266 3 "cat" }{TEXT -1 124 " may also be useful to get rid of extra commas when printing comb inations of text and integers, as in the following example:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 177 "for i from 1 to 4 do\nprint(`If i = `, i, ` then i^2 = `, i^2);\nprint(cat(`If i = `, i, ` then i^2 = `, i^2, `.` ));\nprint(`--------------------------------------------`);\nend do;" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 13 "But act ually " }{TEXT 403 6 "printf" }{TEXT -1 56 " which we will discuss lat er is better for such matters." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 14 "Note that the " }{TEXT 402 3 "cat " }{TEXT -1 72 " operator will not work nicely with floating point num bers. For example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "x||1. 0:=3;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "cat(x,1.0):=3;" }} }{EXCHG {PARA 0 "" 0 "" {TEXT -1 20 "But this works fine:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "x||1:=3; " }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 24 "But note that if we use " }{TEXT 404 3 "cat" }{TEXT -1 25 " we get an error message:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "restart:\ncat(x,1):=3; " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 10 " Check out " }{TEXT 359 4 "?cat" }{TEXT -1 19 " for more examples." }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 " " {TEXT -1 17 "Indexed Variables" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {EXCHG {PARA 0 "" 0 "" {TEXT -1 56 "An alternative way to create sever al variable is to use " }{TEXT 260 17 "indexed variables" }{TEXT -1 34 ". These are variables of the form " }{TEXT 261 4 "x[i]" }{TEXT -1 25 " which Maple exhibits as " }{XPPEDIT 262 0 "x[i];" "6#&%\"xG6#%\"i G" }{TEXT 263 2 " ." }{TEXT -1 15 " That is, the " }{TEXT 264 1 "i" } {TEXT -1 153 " becomes a subscript. This is the same in Maple 6, 7, a nd 8 as in previous versions of Maple. [although the notation is simi lar to that for arrays, an " }{TEXT 362 16 "indexed variable" }{TEXT -1 11 " is not an " }{TEXT 361 5 "array" }{TEXT -1 80 ". We will discu ss the distinction later. Indexed variables are actually of type " } {TEXT 360 5 "table" }{TEXT -1 2 ".]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "for i from 1 to 5 do\n x[i]:=i^2;\nod;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 89 "One may also use doubly, triply, etc., subscribed variabl es as in the following examples:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "A[2,5]:=2;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "z[1,2,2,3]:=x^2 + sin(x);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 11 "Seque nces, " }{TEXT 282 25 "(max, min, seq, ithprime)" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 422 27 "Perhaps the most im portant " }{TEXT 363 5 "types" }{TEXT 423 4 " or " }{TEXT 364 7 "class es" }{TEXT 424 25 " of objects in Maple are " }{TEXT 273 16 "sequences , sets " }{TEXT 425 4 "and " }{TEXT 274 5 "lists" }{TEXT 426 44 ". It \+ is vital to understand these thoroughly" }{TEXT -1 2 ". " }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "We start w ith some examples of " }{TEXT 269 9 "sequences" }{TEXT -1 4 ": A " } {TEXT 275 8 "sequence" }{TEXT -1 3 " (" }{TEXT 340 3 "aka" }{TEXT -1 4 " an " }{TEXT 338 10 "expression" }{TEXT -1 1 " " }{TEXT 339 8 "sequ ence" }{TEXT -1 151 ") is just a bunch of expressions separated by com mas: The expressions may be numbers, variables, functions, etc...--and they need not all be different." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "sequence1:=1,2,1,A,3,x,sin(t);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 3 "If " }{TEXT 276 9 "sequence1" }{TEXT -1 20 " is a sequence then " } {TEXT 277 12 "sequence1[i]" }{TEXT -1 47 " is the i-th term of the seq uence, for example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "sequ ence1[1], sequence1[2], sequence1[3],sequence1[7];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 26 "We make another sequence:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 24 "sequence2:=55,7,33,-1,4;" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 90 "The maximum and minimum of a sequence of real numb ers is obtained by use of the functions " }{TEXT 278 3 "max" }{TEXT -1 5 " and " }{TEXT 279 3 "min" }{TEXT -1 31 ", as in the following ex amples:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "min(sequence2), \+ max(sequence2);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "Note that the solution to a " }{TEXT 365 5 "solve" }{TEXT -1 51 " command as in the following example is given \+ as a " }{TEXT 366 8 "sequence" }{TEXT -1 58 ". We name it so we can ma nipulate the different solutions:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "p:=x^3-60*x^2 + 1100*x - 6000;" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 24 "sequence3:=solve(p=0,x);" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 191 "Note that if the variable x is replaced by \{x\} \+ then we get a different output but still a sequence. In this case a se quence of sets of the form \{x = a\} where a is a solution to the equa tion. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "solve(p=0,\{x\}); " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 124 "Note that we can get hold of individual solutions as follows. This is useful to keep from recopyi ng complicated solutions. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence3[1]; " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "seque nce3[2];" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "sequence3[3];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 405 13 "The function " }{TEXT 272 3 "s eq" }{TEXT 406 187 " is a very important way to form sequences. It can be used to do many things that can be done with do loops and when tha t's possible should be done. Generally this is a faster way to go. " } {TEXT -1 96 "For example, if we wish to apply some function f to the n umbers -1, 2, 3, . . . , 10 we can use " }{TEXT 280 3 "seq" }{TEXT -1 12 " as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "sequenc e4:=seq(f(i),i=-1..10);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 16 "For ex ample, if " }{XPPEDIT 18 0 "f(x) = x^2;" "6#/-%\"fG6#%\"xG*$F'\"\"#" } {TEXT -1 9 " we have:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "se quence4:=seq(i^2,i=-1..10);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 147 "W e could also form this sequence with the following do loop. We use s \+ to indicate the sequence and we start by setting s to be the NULL sequ ence. " }{TEXT 428 40 "You should study this example carefully!" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "s:=NULL;\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "for i from -1 to 10 do\n s:=s,i^2:\nend \+ do:\nsequenc4:=s;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 9 "In Maple " } {TEXT 427 11 "ithprime(n)" }{TEXT -1 27 " is the n-th prime number. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "ithprime(1), ithprime(2), ithprime(3), ithprime(1000); " }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "We can get a sequence consisting of the first 20 primes as follows: " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "sequence5:=seq(ithprime(k),k=1..20);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 8 "One can " }{TEXT 271 11 "concatenate" } {TEXT -1 23 " sequences as follows:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "sequence4;\nsequence5;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "sequence6:=sequence4,sequence5;" }}}{EXCHG {PARA 0 " " 0 "" {TEXT -1 27 "A simpler example would be:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 49 "seqA:=a,b,c;\nseqB:=x,y,z,w;\nseqC:=seqA,seqB, seqA;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 37 "\nNow consider the follo wing sequence:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "sequence7 :=a,b,c,d,e,f,g,h;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 74 "One can sel ect more than one element of a sequence at a time. For example:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "sequence7[2..4];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 42 "To get the first element on the right use :" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence7[-1];" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "To get the second element from the right use:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence7[-2];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 "We can use this to reverse a sequence:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "S1:=seq(i,i=1..7);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "S2:=seq(S1[-i],i=1..7);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "The empty sequence is given by " }{TEXT 270 8 "NULL -- " }{TEXT 281 24 "as we already say above." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "S3:=NULL;\n\nS4:=x,x,S3,y;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 5 "Sets " } {TEXT 283 47 "(union, intersect, subset, nops, minus, member)" }} {EXCHG {PARA 0 "" 0 "" {TEXT -1 17 "One can obtain a " }{TEXT 288 3 "s et" }{TEXT -1 8 " from a " }{TEXT 289 8 "sequence" }{TEXT -1 109 " by \+ placing braces around it. We illustrate this below. We also illustrate some basic set operations such as " }{TEXT 286 48 "union, intersect, \+ minus, subset, nops and member" }{TEXT -1 2 ". " }{TEXT 287 79 "Note, \+ however, that the user has no control over the order of elements of a \+ set" }{TEXT -1 89 ". To control the order of elements we must use sequ ences or lists --as we will see below:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "set1:=\{4,3,3,2,1\};" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "se t2:=\{4,4,5,5,6\};" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "set3: =set1 union set2;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "set4:= set1 intersect set2;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "set 5:=set1 minus set2;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "set5 subset set3;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "set5 subse t set4;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 60 "Let's form a sequence \+ and then turn the sequence into a set." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "ss:=seq(i,i=0..9);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "set6:=\{ss\};" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 23 "Here's another example." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "seq(x^j-1,j=1..5);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "set7 :=\{seq(x^j-1,j=1..5)\};" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 4 "The " }{TEXT 291 9 "empty set" }{TEXT -1 19 " is denoted by \{\};\n" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "\{1,2,3\} intersect \{4,5,6 \};" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 284 4 "nops" }{TEXT -1 49 " is us ed to find the number of elements in a set:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "nops(set7);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "nops(\{\});" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 33 "Note that n ops will not work for " }{TEXT 290 9 "sequences" }{TEXT -1 1 "!" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "nops(1,2,3,4);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 4 "But " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "nops(\{1,2,3,4\});" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "t:=1,1,3,4,4;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 78 "Note that the following does not give the number of elements in the s equence t" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "nops(t);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 86 "But we can convert to to a list an d get the number of elements in the list as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "nops([t]);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 286 "If S is a set then S[i] is the i-th element of the set, \+ but you have no way of knowing what order Maple assigns to the element s of the set S. And the order may change in a single worksheet session . So do NOT make any assumptions about the order even if you see the o rder on the monitor." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "set7 ;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 48 "for i from 1 to nops(s et7) do i,set7[i]; end do;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 285 10 "Me mbership" }{TEXT -1 31 " in a set is tested as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "set7;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "member(x^2-1,set7);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "member(x,set7);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "Note carefully the following way of putting x into the set set7:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 61 "if member(x,set7) = false then set7:=set7 union \{x\}; end if;\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 85 "Recall the example in the previous section on the use of solve. Let's repeat it here:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "p:=x^3-60*x^2 + 1100*x - 600 0;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "sequence3:=solve(p=0, x);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "sequence3[1]; " }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 112 "Now we make a small change in the solve command. Namely we replace x by \{x\}: See the difference in t he output. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "sequence4:=s olve(p=0,\{x\});" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "sequenc e4[1];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 64 "This will be convenient for some purposes as we shall see later." }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 6 "Lists " } {TEXT 292 43 "(sort, nops, op, concatenation of lists)" }}{EXCHG {PARA 0 "" 0 "" {TEXT 296 5 "Lists" }{TEXT 299 1 " " }{TEXT -1 68 "may be formed by placing a sequence in square brackets, as follows: " } {TEXT 298 36 "In this case order is all important." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "List1:=[4,0,2,2,3,1,4];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }{TEXT 300 5 "sort " }{TEXT -1 58 " is useful fo r rearranging a list in non-decreasing order." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "sort(List1);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 295 4 "nops" }{TEXT -1 43 "(List1) gives the length of the list List1: " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "N:=nops(List1);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 22 "Compare the following:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "nops([1,3,3,3,3]);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "nops(\{1,3,3,3,3\});" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 20 "The i-th element in " }{TEXT 301 5 "List1 " }{TEXT -1 13 " is given by " }{TEXT 302 9 "List1[i]:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "for i from 1 to N do i,List1[i]; end do;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 65 "We can select the list of element indexed from 2 to \+ 4 as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "List1[2..4 ];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 104 "The right most element of \+ the list has index -1. The second from the end has index -2, etc. For \+ example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "List1;\nList1[- 1],List1[-2], List1[-3];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 3 "To " } {TEXT 297 11 "concatenate" }{TEXT -1 81 " lists we need to first recov er the underlying sequence by applying the function " }{TEXT 294 2 "op " }{TEXT -1 49 ". This also works for sets, as we now illustrate:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "List1; \nop(List1);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "set1;\nop(set1);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "List1;\nList2:=[x,y,z];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 46 "Here's the way to concatenate List1 and L ist2:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "List3:=[op(List1), op(List2)];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 53 "Here's how to add \+ a new element to the end of a list:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 35 "List4:=[op(List3),`a new element`];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 4 "The " }{TEXT 293 10 "empty list" }{TEXT -1 20 " \+ is denoted by [ ] ;" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 97 "Let's make a list of the primes numbers up to 1 00: We will put them in a list we will call List5:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 109 "List5:=[]:\nfor i from 1 to 100 do\n if i sprime(i) then \n List5:=[op(List5),i]; \n end if;\nend do;\nLis t5;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 52 "An easier way to create th e same list is as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 108 "seq5:=NULL: \nfor i from 1 to 100 do\n if isprime(i) then \n seq5:=seq5,i; \n \+ end if;\nend do;\nList5:=[seq5];" }}}{EXCHG }{EXCHG {PARA 0 "" 0 "" {TEXT -1 194 "As mentioned above one can also select elements of a lis t in reverse order. For example, the last element of the list List is \+ found by List[-1]. The second from last is given by List[-2], etc..." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "List:=[seq(i, i=1..10)]; \nList[-1], List[-2], List[-3];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 38 "We can obtain the reverse of the list " }{TEXT 303 4 "List" } {TEXT -1 18 " above as follows:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "revList:=[seq(List[-i],i=1..10)];" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 48 "Convertin g from list to set and from set to list" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 67 "One can convert lists to sets and vice versa by using the function " }{TEXT 304 7 "convert" }{TEXT -1 1 ":" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 35 "L:=[1,1,1,2,3];\nA:=convert(L, set);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "B:=\{1,2,3,4,5\};\nLL:=convert(B,li st);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 20 "We can convert from " } {TEXT 305 3 "set" }{TEXT -1 5 " and " }{TEXT 306 4 "list" }{TEXT -1 4 " to " }{TEXT 307 8 "sequence" }{TEXT -1 11 " by use of " }{TEXT 308 2 "op" }{TEXT -1 24 " as already noted above:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "op(L);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 6 "op(B);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 42 "Right Clicking (Option Clicking with Mac )" }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 13 "With Windows " }{TEXT 407 11 "right click" }{TEXT -1 91 " on equation, matrix, etc. to obtain a lis t of commands that one may apply to that object. " }{TEXT 429 78 "Note the distinction between clicking on the input and clicking on the out put." }{TEXT -1 13 " On a Mac do " }{TEXT 408 14 "option + click" } {TEXT -1 25 " instead of right click.\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "sin(x) + x^2 + 1;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}} {SECT 1 {PARA 3 "" 0 "" {TEXT -1 20 " round, floor, ceil" }}{PARA 0 " " 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 3 "" 0 "" {TEXT 367 5 "round" } {TEXT 30 2 " (" }{TEXT 373 1 "x" }{TEXT 30 3 ") -" }{TEXT 372 23 " the nearest integer to" }{TEXT 30 1 " " }{TEXT 375 1 "x" }}{PARA 3 "" 0 " " {TEXT 368 9 "floor(x) " }{TEXT 30 3 " - " }{TEXT 370 20 "the largest integer " }{XPPEDIT 18 0 "n <= x;" "6#1%\"nG%\"xG" }{TEXT -1 1 "." }} {PARA 3 "" 0 "" {TEXT 369 4 "ceil" }{TEXT 30 1 "(" }{TEXT 374 1 "x" } {TEXT 30 4 ") - " }{TEXT 371 34 "the smallest integer n such that " } {XPPEDIT 18 0 "x <= n;" "6#1%\"xG%\"nG" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 23 "Here are some exampl es:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "L:=[-3.4,-3.6, 3.6,3.5, 3.4, 3.5, 3, -3]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 126 "for x in L do\nprint(`if x = `, x \+ , ` round(x) = `, round(x), ` floor(x) = `, floor(x), ` ceil(x) = `, ceil(x));\nend do;" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 25 "Somet imes one must apply " }{TEXT 430 5 "evalf" }{TEXT -1 46 " before invok ing these functions. For example:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "floor(sin(10^8));" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 41 "But floor cannot evaluate the following." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "floor(sin(10^10));" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 42 "We must first apply evalf to make it work." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "floor(evalf(sin(10^10)));" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "floor(sqrt(10^9 + 1));" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 31 "However, compare the following:" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "floor(sqrt(10^10 + 1));" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "floor(evalf(sqrt(10^10+1)) );" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "floor(evalf(sqrt(10^1 00 + 1)));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 14 "The Digits of " }{XPPEDIT 18 0 "pi;" "6#% #piG" }{TEXT -1 1 " " }}{EXCHG {PARA 256 "" 0 "" {TEXT 316 140 "Here w e write a procedure to explore the question of whether or not the digi ts 0 to 9 are uniformly distributed among the first N digits of " } {XPPEDIT 318 0 "pi;" "6#%#piG" }{TEXT -1 0 "" }{TEXT 317 1 "." }{TEXT -1 1 "\n" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 16 "Use the command " } {TEXT 309 13 "?convert/base" }{TEXT -1 37 " to find out more about the function " }{TEXT 310 7 "convert" }{TEXT -1 25 " used below. Actuall y, " }{TEXT 311 7 "convert" }{TEXT -1 60 " has many uses in maple, as we will see later in the course." }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 312 6 "Digits" }{TEXT -1 129 " is an \"en vironmental\" variable that tells how many digits are carried in float ing point operations. The default is 10 as we see:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 "Digits;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 " evalf(Pi);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 79 "The following sets \+ the number of digit carried by floating point numbers to 30:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "Digits:=30;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "evalf(Pi);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 72 "Now we set the number of digits carried by floating po int numbers to 3. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "n:=3: \nDigits:=3; " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "X:=evalf(Pi);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "10^(n-1)*X;" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "X:=floor(10^(n-1)*X); " }{TEXT -1 51 "This converts X to an inte ger with the same digits." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "X:=convert(X,base, 10); " }{TEXT -1 178 "Note the digits appear in reversed order, but they are now in a list which makes them easier to handle. There are alternative ways to get at the digits that we may d iscuss later." }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 51 "Let's do this ag ain with n = 100 instead of just 3:" }}{PARA 0 "" 0 "" {TEXT -1 0 "" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 80 "n:=100;\nDigits:=n;\nX:=ev alf(Pi,n);\nX:=floor(10^(n-1)*X);\nX:=convert(X,base, 10);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "nops(X);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 85 "Now we shall count the number of times each digit appears in the first 100 digits of " }{XPPEDIT 18 0 "Pi;" "6#%#PiG" }{TEXT -1 146 ". We will let c[0] be the number of times 0 appears, c[1] be t he number of times 1 appears, etc... First we initialize the 10 variab les c[i] to 0." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "for i fro m 0 to 9 do c[i]:=0; od:" }{TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "for k from 1 to n do\n j:=X[k]; \n c[j]:=c[j] + 1; \nod:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 65 "Now we exhibit the value s of the c[i]'s in a sequence as follows:" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 19 "[seq(c[j],j=0..9)];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 86 "This says that the digit 0 appears 8 time, 1 appears 8 ti mes, 2 appears 12 times, etc." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 77 "Another way to do the counting is \+ as follows: First set the c[i]'s back to 0:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "for i from 0 to 9 do c[i]:=0; od:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "for k from 1 to n do \n c[X[k]]:=c [X[k]] + 1;\nod:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "[seq(c[ j],j=0..9)];" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 19 "Now we construct \+ a " }{TEXT 431 9 "procedure" }{TEXT -1 76 " to compute the number of t imes each digit appears in the first n digits of " }{XPPEDIT 18 0 "Pi; " "6#%#PiG" }{TEXT -1 113 ". Before constructing the procedure we do i t step by step for a small value of n so we can see what is happening. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "restart:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 85 "n:=40;\nDigits:=n;\nX:=evalf(Pi,n); \nX:=floor(10^(n-1)*X);\nX:=convert(X,base, 10);\n \n \n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "for i from 0 to 9 do c[i]:=0; end d o:\n " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "for k from 1 to n do\n j:=X[k]; \n c[j]:=c[j] + 1;\nend do:" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 19 "[seq(c[j],j=0..9)];" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 34 "Now we make this into a procedure:" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 252 "numdigits:=proc(n)\nlocal X,c,i,k,j;\n Dig its:=n:\n X:=evalf(Pi,n):\n X:=floor(10^(n-1)*X):\n X:=convert(X,ba se, 10):\n for i from 0 to 9 do c[i]:=0; end do:\n for k from 1 to n do\n j:=X[k]; \n c[j]:=c[j] + 1;\n end do:\n [seq(c[j],j=0..9)]; \nend proc:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "numdigits(10 0);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "numdigits(1000);" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "numdigits(10000);" }}} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 15 "At the we bpage " }}{PARA 0 "" 0 "" {TEXT -1 3 " " }}{PARA 259 "" 0 "" {TEXT 314 59 "http://www.cs.ruu.nl/wais/html/na-dir/sci-math-faq/pi.html " } {TEXT -1 0 "" }{TEXT 313 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 93 "you can find out how mathematicians have \+ been able to compute the first 51 billion digits of " }{XPPEDIT 18 0 " Pi;" "6#%#PiG" }{TEXT -1 156 ". Maple will not be able to do this in a reasonable amount of time using the method we have just described. Mo re sophisticated techniques are necessary. At " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 259 "" 0 "" {TEXT 315 42 "http://mathworld.wolfr am.com/PiDigits.html" }{TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 89 "you will also see some data on the dist ribution of the digits 0-9 in the known digits of " }{XPPEDIT 18 0 "pi ;" "6#%#piG" }{TEXT -1 113 ". It appears to be true that the digits ap pear with approximately equal frequency--but this has not been proved. " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 4 " " }}}}{SECT 1 {PARA 3 "" 0 "" {TEXT -1 29 "Assignment 4 - Due Tuesday, " }}{PARA 0 "" 0 " " {TEXT -1 0 "" }}{EXCHG {PARA 0 "" 0 "" {TEXT 327 10 "Problem 1." } {TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 55 "(a) Prove that every prime p greater than 2 satisfies " }{TEXT 326 11 "p mod 8 = r" }{TEXT -1 7 " where " }{TEXT 432 1 "r" } {TEXT -1 119 " is 1, 3, 5, or 7. Thus primes > 2 may be divided into f our classes depending on their remainders when divided by 8. " } {TEXT 343 99 "No Maple calculations are necessary here, but write out \+ your proof using Maple as a word processor." }{TEXT -1 2 " " }{TEXT 320 6 "HINT: " }{TEXT -1 24 "Can p > 2 be a prime if " }{TEXT 319 12 " p mod 8 = r" }{TEXT -1 37 " when r = 0, 2, 4 or 6? Note that " } {TEXT 329 12 "p mod 8 = r" }{TEXT -1 12 " means that " }{TEXT 330 10 "p = 8q + r" }{TEXT -1 7 " where " }{TEXT 331 30 "r = 0, 1, 2, 3, 4, 5 , 6, or 7." }{TEXT -1 3 ". \n" }}{PARA 0 "" 0 "" {TEXT -1 9 "(b) Set \+ " }{TEXT 332 6 "N:=100" }{TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 56 " (i) Form four lists L[1], L[3], L[5], L[7] where L[" }{TEXT 433 1 "r" }{TEXT -1 41 "] contains all primes 2< p < N such that " } {TEXT 328 11 "p mod 8 = r" }{TEXT -1 3 " . " }}{PARA 0 "" 0 "" {TEXT -1 62 " (ii) Using Maple count the number of primes in each list.\n " }}{PARA 0 "" 0 "" {TEXT 321 10 "Problem 2." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 88 "In the notation of Problem 1, m ake a procedure with input = arbitrary positive integer " }{TEXT 333 1 "N" }{TEXT -1 23 " and output = the list " }{TEXT 325 48 "[nops(L[1] ), nops(L[3]), nops(L[5]), nops(L[7])]" }{TEXT -1 2 ". " }{TEXT 324 67 "Do some experiments to see for which (if any) r, L[r] is largest. \+ ." }{TEXT -1 15 " [According to " }{TEXT 322 56 "Dirichlet's Theorem o n Primes in Arithmetic Progressions" }{TEXT -1 13 " the numbers " } {TEXT 323 10 "nops(L[r])" }{TEXT -1 38 " will be asymptotically the sa me.] \n\n" }{TEXT 334 3 "(a)" }{TEXT -1 29 " Test your procedure on s ome " }{TEXT 335 5 "small" }{TEXT -1 13 " values of N " }{TEXT 336 52 "where you can check by hand if the answer is correct" }{TEXT -1 3 ". \+ " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 337 3 "(b) " }{TEXT -1 64 " Then try it on some larger values of N. Try, for exam ple, N = " }{XPPEDIT 18 0 "10^i;" "6#)\"#5%\"iG" }{TEXT -1 16 ", i = 2,3,4, 5." }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{EXCHG {PARA 0 "" 0 "" {TEXT 341 10 "Problem 3." }{TEXT -1 3 " \n " }}{PARA 0 "" 0 "" {TEXT -1 82 "(a) Write a procedure whose input is a positive integer n and w hose output is the " }{TEXT 381 4 "set " }{TEXT -1 74 "of all squares \+ of positive integers less than or equal to n. Write it in " }{TEXT 382 18 "two different ways" }{TEXT -1 12 ". (i) using " }{TEXT 379 3 " seq" }{TEXT -1 18 " and (ii) using a " }{TEXT 380 7 "do loop" }{TEXT -1 54 ". Show output for n = 4, 10, 20, 100 and 1000. [Hint: " } {XPPEDIT 18 0 "i^2 <= n;" "6#1*$%\"iG\"\"#%\"nG" }{TEXT -1 18 " is equ ivalent to " }{XPPEDIT 18 0 "i <= sqrt(n);" "6#1%\"iG-%%sqrtG6#%\"nG" }{TEXT -1 3 ".]\n" }}{PARA 0 "" 0 "" {TEXT -1 22 "(b) Write a procedur e " }{TEXT 385 6 "genseq" }{TEXT -1 55 " whose input is the integer n. and whose output is the " }{TEXT 383 4 "list" }{TEXT -1 22 " of all i ntegers 7*i " }{TEXT 376 4 " mod" }{TEXT -1 112 " 11 for i from 1 to \+ n. Note that each of these integers will be in the set \{0, 1, 2, . . . , 10\}. Write it in " }{TEXT 384 18 "two different ways" }{TEXT -1 11 " (i) using " }{TEXT 377 3 "seq" }{TEXT -1 18 " and (ii) using a " }{TEXT 378 7 "do loop" }{TEXT -1 42 ". Test each procedures for n = 11 and 110." }}{PARA 0 "" 0 "" {TEXT -1 1 " " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT 342 10 "Problem 4." }{TEXT -1 3 " \n" }}{PARA 0 "" 0 "" {TEXT -1 65 "(a) Write a procedure that will \+ take as input a positive integer " }{TEXT 388 1 "n" }{TEXT -1 30 " and whose output will be the " }{TEXT 394 4 "list" }{TEXT -1 1 " " } {TEXT 389 27 "[c[0], c[1], . . . , c[10]]" }{TEXT -1 7 " where " } {TEXT 390 4 "c[i]" }{TEXT -1 51 " is the number of times that i appear s in the list " }{TEXT 386 9 "genseq(n)" }{TEXT -1 7 " where " }{TEXT 387 6 "genseq" }{TEXT -1 183 " is as described in Problem 3. Test the procedure for n = 100, 1000 and 10000. Do the numbers 0, 1, . . ., 1 0 appear to be equally distributed?\n\n(b) In the procedure genseq rep lace " }{TEXT 391 10 "7*i mod 11" }{TEXT -1 4 " by " }{TEXT 392 10 "8* i mod 22" }{TEXT -1 48 ". Then repeat the instructions in part (a) wit h " }{TEXT 393 69 "[c[0], c[1], . . . , c[10]] replaced by [c[0], c[1] , . . . , c[21]]. " }{TEXT -1 65 "Do the numbers 0, 1, . . ., 21 appea r to be equally distributed? " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 " " {TEXT -1 1 "\n" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 257 "" 0 "" {TEXT -1 0 "" }}{PARA 19 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 1 "\n" }}{PARA 0 "" 0 "" {TEXT -1 1 "\n" }}}}{MARK "15" 0 } {VIEWOPTS 0 0 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 1 1 2 33 1 1 }