This file is indexed.

/usr/lib/swi-prolog/library/helpidx.pl is in swi-prolog-nox 5.10.4-3ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
/*  Generated by online_index/0

    Purpose: Index to file online_manual
*/

:- module(help_index,
	[ predicate/5
	, section/4
	, function/3
	]).

%   Predicate predicate/5

predicate(help,0,'Give help on help',1096,1098).
predicate(help,1,'Give help on predicates and show parts of manual',1100,1124).
predicate(apropos,1,'library(online_help) Search manual',1126,1134).
predicate(explain,1,'library(explain) Explain argument',1136,1142).
predicate(explain,2,'library(explain) 2nd argument is explanation of first',1144,1147).
predicate(current_prolog_flag,2,'Get system configuration parameters',1601,2168).
predicate(set_prolog_flag,2,'Define a system feature',2170,2194).
predicate(create_prolog_flag,3,'Create a new Prolog flag',2196,2213).
predicate(make_library_index,1,'Create autoload file INDEX.pl',2338,2342).
predicate(make_library_index,2,'Create selective autoload file INDEX.pl',2344,2364).
predicate(reload_library_index,0,'Force reloading the autoload index',2366,2377).
predicate(guitracer,0,'Install hooks for the graphical debugger',3609,3615).
predicate(noguitracer,0,'Disable the graphical debugger',3617,3620).
predicate(gtrace,0,'Trace using graphical tracer',3622,3624).
predicate(gdebug,0,'Debug using graphical tracer',3626,3628).
predicate(gspy,1,'Spy using graphical tracer',3630,3632).
predicate(gxref,0,'Cross-reference loaded program',3668,3724).
predicate(prolog_ide,1,'Program access to the development environment',3736,3764).
predicate(load_files,2,'Load source files with options',3967,4098).
predicate(consult,1,'Read (compile) a Prolog source file',4100,4116).
predicate(ensure_loaded,1,'Consult a file if that has not yet been done',4118,4130).
predicate(include,1,'Include a file with declarations',4132,4137).
predicate(require,1,'This file requires these predicates',4139,4154).
predicate(encoding,1,'Define encoding inside a source file',4156,4161).
predicate(make,0,'Reconsult all changed source files',4163,4174).
predicate(library_directory,1,'Hook (user) Directories holding Prolog libraries',4176,4181).
predicate(file_search_path,2,'Define path-aliases for locating files',4183,4217).
predicate(expand_file_search_path,2,'Wildcard expansion of file paths',4219,4222).
predicate(prolog_file_type,2,'Define meaning of file extension',4224,4246).
predicate(source_file,1,'Examine currently loaded source files',4248,4251).
predicate(source_file,2,'Obtain source file of predicate',4253,4259).
predicate(unload_file,1,'Unload a source-file',4261,4272).
predicate(prolog_load_context,2,'Context information for directives',4274,4316).
predicate(source_location,2,'Location of last read term',4318,4323).
predicate(at_halt,1,'Register goal to run at halt/1',4325,4332).
predicate(initialization,1,'Initialization directive',4334,4366).
predicate(initialization,2,'Initialization directive',4368,4382).
predicate(compiling,0,'Is this a compilation run?',4384,4389).
predicate(term_expansion,2,'Hook (user) Convert term before compilation',4406,4427).
predicate(expand_term,2,'Compiler: expand read term into clause(s)',4429,4445).
predicate(goal_expansion,2,'Hook for macro-expanding goals',4447,4464).
predicate(expand_goal,2,'Compiler: expand goal in clause-body',4466,4473).
predicate(compile_aux_clauses,1,'Compile predicates for goal_expansion/2',4475,4480).
predicate(dcg_translate_rule,2,'Source translation of DCG rules',4482,4486).
predicate(preprocessor,2,'Install a preprocessor before the compiler',4488,4505).
predicate(if,1,'Start conditional compilation (directive)',4538,4543).
predicate(elif,1,'Part of conditional compilation (directive)',4545,4561).
predicate(else,0,'Part of conditional compilation (directive)',4563,4565).
predicate(endif,0,'End of conditional compilation (directive)',4567,4569).
predicate(garbage_collect_clauses,0,'Invoke clause garbage collector',4595,4603).
predicate(qcompile,1,'Compile source to Quick Load File',4651,4671).
predicate(qcompile,2,'Compile source to Quick Load File',4673,4676).
predicate(edit,1,'Edit a file, predicate, module (extensible)',4706,4713).
predicate(edit,0,'Edit current script- or associated file',4715,4719).
predicate(locate,3,'Locate targets for edit/1',4721,4734).
predicate(locate,2,'Locate targets for edit/1',4736,4739).
predicate(edit_source,1,'Call editor for edit/1',4741,4758).
predicate(edit_command,2,'Specify editor activation',4760,4774).
predicate(load,0,'Load edit/1 extensions',4776,4789).
predicate(listing,1,'List predicate',4791,4796).
predicate(listing,0,'List program in current module',4798,4800).
predicate(portray_clause,1,'Pretty print a clause',4802,4807).
predicate(portray_clause,2,'Pretty print a clause to a stream',4809,4811).
predicate(var,1,'Type check for unbound variable',4816,4818).
predicate(nonvar,1,'Type check for bound term',4820,4822).
predicate(integer,1,'Type check for integer',4824,4826).
predicate(float,1,'Type check for a floating point number',4828,4830).
predicate(rational,1,'Type check for a rational number',4832,4835).
predicate(rational,3,'Decompose a rational',4837,4842).
predicate(number,1,'Type check for integer or float',4844,4846).
predicate(atom,1,'Type check for an atom',4848,4850).
predicate(blob,2,'Type check for a blob',4852,4854).
predicate(string,1,'Type check for string',4856,4870).
predicate(atomic,1,'Type check for primitive',4872,4877).
predicate(compound,1,'Test for compound term',4879,4882).
predicate(callable,1,'Test for atom or compound term',4884,4887).
predicate(ground,1,'Verify term holds no unbound variables',4889,4891).
predicate(cyclic_term,1,'Test term for cycles',4893,4896).
predicate(acyclic_term,1,'Test term for cycles',4898,4902).
predicate(=,2,'Unification',4910,4917).
predicate(\=,2,'Not unifiable',4919,4921).
predicate(==,2,'Identical',4947,4950).
predicate(\==,2,'Not identical',4952,4954).
predicate(@<,2,'Standard order smaller',4956,4958).
predicate(@=<,2,'Standard order smaller or equal',4960,4963).
predicate(@>,2,'Standard order larger',4965,4967).
predicate(@>=,2,'Standard order larger or equal',4969,4972).
predicate(compare,3,'Compare, using a predicate to determine the order',4974,4977).
predicate(unify_with_occurs_check,2,'Logically sound unification',4990,5010).
predicate(=@=,2,'Structural identical',5012,5054).
predicate(\=@=,2,'Not structural identical',5056,5058).
predicate(subsumes_term,2,'One-sided unification test',5060,5065).
predicate(term_subsumer,3,'Most specific generalization of two terms',5067,5070).
predicate(unifiable,3,'Determining binding required for unification',5072,5077).
predicate(?=,2,'Test of terms can be compared now',5079,5084).
predicate(fail,0,'Always false',5102,5105).
predicate(false,0,'Always false',5107,5109).
predicate(true,0,'Succeed',5111,5114).
predicate(repeat,0,'Succeed, leaving infinite backtrack points',5116,5118).
predicate(!,0,'Cut (discard choicepoints)',5120,5132).
predicate(',',2,'Conjunction of goals',5134,5141).
predicate(;,2,'Disjunction of goals. Same as |/2',5143,5149).
predicate('|',2,'Disjunction of goals. Same as ;/2',5151,5154).
predicate(->,2,'If-then-else',5156,5173).
predicate(*->,2,'Soft-cut',5175,5185).
predicate(\+,1,'Negation by failure. Same as not/1',5187,5191).
predicate(call,1,'Call a goal',5203,5206).
predicate(call,_G38,'Call with additional arguments',5208,5217).
predicate(apply,2,'Call goal with additional arguments',5219,5227).
predicate(not,1,'Negation by failure (argument not provable). Same as \\+/1',5229,5232).
predicate(once,1,'Call a goal deterministically',5234,5248).
predicate(ignore,1,'Call the argument, but always succeed',5250,5258).
predicate(call_with_depth_limit,3,'Prove goal with bounded depth',5260,5288).
predicate(setup_call_cleanup,3,'Undo side-effects safely',5290,5345).
predicate(setup_call_catcher_cleanup,4,'Undo side-effects safely',5347,5378).
predicate(call_cleanup,2,'Guard a goal with a cleaup-handler',5380,5387).
predicate(call_cleanup,3,'Guard a goal with a cleaup-handler',5389,5392).
predicate(catch,3,'Call goal, watching for exceptions',5403,5414).
predicate(throw,1,'Raise an exception (see catch/3)',5416,5435).
predicate(print_message,2,'Print message from (exception) term',5516,5541).
predicate(print_message_lines,3,'Print message to stream',5543,5568).
predicate(message_hook,3,'Intercept print_message/2',5570,5578).
predicate(message_to_string,2,'Translate message-term to string',5580,5584).
predicate(on_signal,3,'Handle a software signal',5671,5705).
predicate(current_signal,3,'Current software signal mapping',5707,5711).
predicate(phrase,2,'Activate grammar-rule set',5794,5796).
predicate(phrase,3,'Activate grammar-rule set (returning rest)',5798,5810).
predicate(abolish,1,'Remove predicate definition from the database',5841,5857).
predicate(abolish,2,'Remove predicate definition from the database',5859,5862).
predicate(redefine_system_predicate,1,'Abolish system definition',5864,5874).
predicate(retract,1,'Remove clause from the database',5876,5880).
predicate(retractall,1,'Remove unifying clauses from the database',5882,5887).
predicate(asserta,1,'Add a clause to the database (first)',5889,5894).
predicate(assertz,1,'Add a clause to the database (last)',5896,5899).
predicate(assert,1,'Add a clause to the database',5901,5904).
predicate(asserta,2,'Add a clause to the database (first)',5906,5910).
predicate(assertz,2,'Add a clause to the database (last)',5912,5915).
predicate(assert,2,'Add a clause to the database, give reference',5917,5919).
predicate(recorda,3,'Record term in the database (first)',5921,5927).
predicate(recorda,2,'Record term in the database (first)',5929,5931).
predicate(recordz,3,'Record term in the database (last)',5933,5936).
predicate(recordz,2,'Record term in the database (last)',5938,5940).
predicate(recorded,3,'Obtain term from the database',5942,5953).
predicate(recorded,2,'Obtain term from the database',5955,5957).
predicate(erase,1,'Erase a database record or clause',5959,5964).
predicate(instance,2,'Fetch clause or record from reference',5966,5969).
predicate(flag,3,'Simple global variable system',5971,5981).
predicate(term_hash,2,'Hash-value of ground term',6012,6027).
predicate(term_hash,4,'Hash-value of term with depth limit',6029,6038).
predicate(variant_sha1,2,'Term-hash for term-variants',6040,6059).
predicate(dynamic,1,'Indicate predicate definition may change',6080,6088).
predicate(compile_predicates,1,'Compile dynamic code to static',6090,6098).
predicate(multifile,1,'Indicate distributed definition of predicate',6100,6104).
predicate(discontiguous,1,'Indicate distributed definition of a predicate',6106,6109).
predicate(public,1,'Declaration that a predicate may be called',6111,6114).
predicate(index,1,'Change clause indexing',6116,6159).
predicate(hash,1,'Index predicate using a hash-table',6161,6170).
predicate(current_atom,1,'Examine existing atoms',6175,6179).
predicate(current_blob,2,'Examine typed blobs',6181,6186).
predicate(current_functor,2,'Examine existing name/arity pairs',6188,6191).
predicate(current_flag,1,'Examine existing flags',6193,6196).
predicate(current_key,1,'Examine existing database keys',6198,6201).
predicate(current_predicate,1,'Examine existing predicates (ISO)',6203,6219).
predicate(current_predicate,2,'Examine existing predicates',6221,6238).
predicate(predicate_property,2,'Query predicate attributes',6240,6361).
predicate(dwim_predicate,2,'Find predicate in ``Do What I Mean\'\' sense',6363,6372).
predicate(clause,2,'Get clauses of a predicate',6374,6378).
predicate(clause,3,'Get clauses of a predicate',6380,6385).
predicate(nth_clause,3,'N-th clause of a predicate',6387,6405).
predicate(clause_property,2,'Get properties of a clause',6407,6427).
predicate(open,4,'Open a file (creating a stream)',6467,6561).
predicate(open,3,'Open a file (creating a stream)',6563,6565).
predicate(open_null_stream,1,'Open a stream to discard output',6567,6585).
predicate(close,1,'Close stream',6587,6595).
predicate(close,2,'Close stream (forced)',6597,6601).
predicate(stream_property,2,'Get stream properties',6603,6712).
predicate(current_stream,3,'Examine open streams',6714,6721).
predicate(is_stream,1,'Type check for a stream handle',6723,6727).
predicate(stream_pair,3,'Create/examine a bi-directional stream',6729,6736).
predicate(set_stream_position,2,'Seek stream to position',6738,6742).
predicate(stream_position_data,3,'Access fields from stream position',6744,6750).
predicate(seek,4,'Modify the current position in a stream',6752,6780).
predicate(set_stream,2,'Set stream attribute',6782,6858).
predicate(set_prolog_IO,3,'Prepare streams for interactive session',6860,6871).
predicate(see,1,'Change the current input stream',6940,6945).
predicate(tell,1,'Change current output stream',6947,6952).
predicate(append,1,'Append to a file',6954,6958).
predicate(seeing,1,'Query the current input stream',6960,6965).
predicate(telling,1,'Query current output stream',6967,6972).
predicate(seen,0,'Close the current input stream',6974,6977).
predicate(told,0,'Close current output',6979,6982).
predicate(set_input,1,'Set current input stream from a stream',6990,6993).
predicate(set_output,1,'Set current output stream from a stream',6995,6998).
predicate(current_input,1,'Get current input stream',7000,7003).
predicate(current_output,1,'Get the current output stream',7005,7007).
predicate(with_output_to,2,'Write to strings and more',7012,7063).
predicate(wait_for_input,3,'Wait for input with optional timeout',7068,7110).
predicate(byte_count,2,'Byte-position in a stream',7112,7117).
predicate(character_count,2,'Get character index on a stream',7119,7124).
predicate(line_count,2,'Line number on stream',7126,7129).
predicate(line_position,2,'Character position in line on stream',7131,7136).
predicate(nl,0,'Generate a newline',7143,7146).
predicate(nl,1,'Generate a newline on a stream',7148,7150).
predicate(put,1,'Write a character',7152,7157).
predicate(put,2,'Write a character on a stream',7159,7161).
predicate(put_byte,1,'Write a byte',7163,7166).
predicate(put_byte,2,'Write a byte on a stream',7168,7171).
predicate(put_char,1,'Write a character',7173,7177).
predicate(put_char,2,'Write a character on a stream',7179,7183).
predicate(put_code,1,'Write a character-code',7185,7189).
predicate(put_code,2,'Write a character-code on a stream',7191,7193).
predicate(tab,1,'Output number of spaces',7195,7199).
predicate(tab,2,'Output number of spaces on a stream',7201,7203).
predicate(flush_output,0,'Output pending characters on current stream',7205,7209).
predicate(flush_output,1,'Output pending characters on specified stream',7211,7214).
predicate(ttyflush,0,'Flush output on terminal',7216,7218).
predicate(get_byte,1,'Read next byte (ISO)',7220,7223).
predicate(get_byte,2,'Read next byte from a stream (ISO)',7225,7228).
predicate(get_code,1,'Read next character (ISO)',7230,7234).
predicate(get_code,2,'Read next character from a stream (ISO)',7236,7238).
predicate(get_char,1,'Read next character as an atom (ISO)',7240,7244).
predicate(get_char,2,'Read next character from a stream (ISO)',7246,7249).
predicate(get0,1,'Read next character',7251,7256).
predicate(get0,2,'Read next character from a stream',7258,7261).
predicate(get,1,'Read first non-blank character',7263,7266).
predicate(get,2,'Read first non-blank character from a stream',7268,7270).
predicate(peek_byte,1,'Read byte without removing',7272,7273).
predicate(peek_byte,2,'Read byte without removing',7275,7276).
predicate(peek_code,1,'Read character-code without removing',7278,7279).
predicate(peek_code,2,'Read character-code without removing',7281,7282).
predicate(peek_char,1,'Read character without removing',7284,7285).
predicate(peek_char,2,'Read character without removing',7287,7294).
predicate(skip,1,'Skip to character in current input',7296,7300).
predicate(skip,2,'Skip to character on stream',7302,7304).
predicate(get_single_char,1,'Read next character from the terminal',7306,7315).
predicate(at_end_of_stream,0,'Test for end of file on input',7317,7321).
predicate(at_end_of_stream,1,'Test for end of file on stream',7323,7328).
predicate(set_end_of_stream,1,'Set physical end of an open file',7330,7334).
predicate(copy_stream_data,3,'Copy n bytes from stream to stream',7336,7341).
predicate(copy_stream_data,2,'Copy all data from stream to stream',7343,7345).
predicate(read_pending_input,3,'Fetch buffered input from a stream',7347,7373).
predicate(write_term,2,'Write term with options',7387,7490).
predicate(write_term,3,'Write term with options to stream',7492,7495).
predicate(write_canonical,1,'Write a term with quotes, ignore operators',7497,7511).
predicate(write_canonical,2,'Write a term with quotes, ignore operators on a stream',7513,7515).
predicate(write,1,'Write term',7517,7520).
predicate(write,2,'Write term to stream',7522,7524).
predicate(writeq,1,'Write term, insert quotes',7526,7531).
predicate(writeq,2,'Write term, insert quotes on stream',7533,7535).
predicate(print,1,'Print a term',7537,7543).
predicate(print,2,'Print a term on a stream',7545,7547).
predicate(portray,1,'Hook (user) Modify behaviour of print/1',7549,7556).
predicate(read,1,'Read Prolog term',7558,7563).
predicate(read,2,'Read Prolog term from stream',7565,7567).
predicate(read_clause,1,'Read clause',7569,7576).
predicate(read_clause,2,'Read clause from stream',7578,7580).
predicate(read_term,2,'Read term with options',7582,7679).
predicate(read_term,3,'Read term with options from stream',7681,7683).
predicate(read_history,6,'Read using history substitution',7685,7700).
predicate(prompt,2,'Change the prompt used by read/1',7702,7710).
predicate(prompt1,1,'Change prompt for 1 line',7712,7715).
predicate(functor,3,'Get name and arity of a term or construct a term ',7720,7727).
predicate(arg,3,'Access argument of a term',7729,7738).
predicate(=..,2,'``Univ.\'\' Term to list conversion',7740,7755).
predicate(numbervars,3,'Number unbound variables of a term',7757,7772).
predicate(numbervars,4,'Number unbound variables of a term',7774,7793).
predicate(term_variables,2,'Find unbound variables in a term',7795,7809).
predicate(term_variables,3,'Find unbound variables in a term',7811,7814).
predicate(copy_term,2,'Make a copy of a term',7816,7825).
predicate(setarg,3,'Destructive assignment on term',7837,7853).
predicate(nb_setarg,3,'Non-backtrackable assignment to term',7855,7885).
predicate(nb_linkarg,3,'Non-backtrackable assignment to term',7887,7891).
predicate(duplicate_term,2,'Create a copy of a term',7893,7898).
predicate(same_term,2,'Test terms to be at the same address',7900,7905).
predicate(atom_codes,2,'Convert between atom and list of characters codes',7928,7934).
predicate(atom_chars,2,'Convert between atom and list of characters',7936,7944).
predicate(char_code,2,'Convert between character and character code',7946,7949).
predicate(number_chars,2,'Convert between number and one-char atoms',7951,7958).
predicate(number_codes,2,'Convert between number and character codes',7960,7964).
predicate(atom_number,2,'Convert between atom and number',7966,7975).
predicate(name,2,'Convert between atom and list of character codes',7977,7985).
predicate(term_to_atom,2,'Convert between term and atom',7987,7993).
predicate(atom_to_term,3,'Convert between atom and term',7995,8001).
predicate(atom_concat,3,'Append two atoms',8003,8010).
predicate(atomic_concat,3,'Concatenate two atomic values to an atom',8012,8020).
predicate(atomic_list_concat,2,'Append a list of atoms',8022,8026).
predicate(atomic_list_concat,3,'Append a list of atoms with separator',8028,8047).
predicate(atom_length,2,'Determine length of an atom',8049,8055).
predicate(atom_prefix,2,'Test for start of atom',8057,8060).
predicate(sub_atom,5,'Take a substring from an atom',8062,8075).
predicate(char_type,2,'Classify characters',8090,8184).
predicate(code_type,2,'Classify a character-code',8186,8193).
predicate(downcase_atom,2,'Convert atom to lower-case',8203,8208).
predicate(upcase_atom,2,'Convert atom to upper-case',8210,8212).
predicate(normalize_space,2,'Normalize white space',8217,8222).
predicate(collation_key,2,'Sort key for locale dependent ordering',8230,8243).
predicate(locale_sort,2,'Language dependent sort of atoms',8245,8250).
predicate(string_to_atom,2,'Conversion between string and atom',8296,8300).
predicate(string_to_list,2,'Conversion between string and list of character codes',8302,8306).
predicate(string_length,2,'Determine length of a string',8308,8312).
predicate(string_concat,3,'atom_concat/3 for strings',8314,8323).
predicate(sub_string,5,'Take a substring from a string',8325,8329).
predicate(op,3,'Declare an operator',8367,8432).
predicate(current_op,3,'Examine current operator declarations',8434,8437).
predicate(char_conversion,2,'Provide mapping of input characters',8445,8451).
predicate(current_char_conversion,2,'Query input character mapping',8453,8456).
predicate(between,3,'Integer range checking/generating',8476,8483).
predicate(succ,2,'Logical integer successor relation',8485,8491).
predicate(plus,3,'Logical integer addition',8493,8496).
predicate(>,2,'Arithmetic larger',8507,8509).
predicate(<,2,'Arithmetic smaller',8511,8513).
predicate(=<,2,'Arithmetic smaller or equal',8515,8518).
predicate(>=,2,'Arithmetic larger or equal',8520,8523).
predicate(=\=,2,'Arithmetic not equal',8525,8527).
predicate(=:=,2,'Arithmetic equal',8529,8531).
predicate(is,2,'Evaluate arithmetic expression',8533,8542).
predicate(-,1,'Unary minus',8651,8653).
predicate(+,1,'Unary plus (No-op)',8655,8658).
predicate(+,2,'Addition',8660,8662).
predicate(-,2,'Subtraction',8664,8666).
predicate(*,2,'Multiplication',8668,8670).
predicate(/,2,'Division',8672,8680).
predicate(mod,2,'Remainder of division',8682,8685).
predicate(rem,2,'Remainder of division',8687,8690).
predicate(//,2,'Integer division',8692,8697).
predicate(div,2,'Integer division',8699,8711).
predicate(rdiv,2,'Ration number division',8713,8717).
predicate(gcd,2,'Greatest common divisor',8719,8721).
predicate(abs,1,'Absolute value',8723,8725).
predicate(sign,1,'Extract sign of value',8727,8729).
predicate(max,2,'Maximum of two numbers',8731,8737).
predicate(min,2,'Minimum of two numbers',8739,8742).
predicate('.',2,'Consult. Also list constructor',8744,8751).
predicate(random,1,'Generate random number',8753,8765).
predicate(round,1,'Round to nearest integer',8767,8769).
predicate(integer,1,'Type check for integer',8771,8773).
predicate(float,1,'Type check for a floating point number',8775,8780).
predicate(rational,1,'Type check for a rational number',8782,8800).
predicate(rationalize,1,'Convert to rational number',8802,8816).
predicate(float_fractional_part,1,'Fractional part of a float',8818,8823).
predicate(float_integer_part,1,'Integer part of a float',8825,8828).
predicate(truncate,1,'Truncate float to integer',8830,8834).
predicate(floor,1,'Largest integer below argument',8836,8839).
predicate(ceiling,1,'Smallest integer larger than arg',8841,8844).
predicate(ceil,1,'Smallest integer larger than arg',8846,8848).
predicate(>>,2,'Bitwise right shift',8850,8855).
predicate(<<,2,'Bitwise left shift',8857,8859).
predicate(\/,2,'Bitwise or',8861,8863).
predicate(/\,2,'Bitwise and',8865,8867).
predicate(xor,2,'Bitwise exclusive or',8869,8871).
predicate(\,1,'Bitwise negation',8873,8876).
predicate(sqrt,1,'Square root',8878,8880).
predicate(sin,1,'Sine',8882,8884).
predicate(cos,1,'Cosine',8886,8888).
predicate(tan,1,'Tangent',8890,8892).
predicate(asin,1,'Inverse (arc) sine',8894,8896).
predicate(acos,1,'Inverse (arc) cosine',8898,8900).
predicate(atan,1,'Inverse (arc) tangent',8902,8904).
predicate(atan2,2,'Rectangular to polar conversion',8906,8910).
predicate(atan,2,'Rectangular to polar conversion',8912,8914).
predicate(log,1,'Natural logarithm',8916,8918).
predicate(log10,1,'10 base logarithm',8920,8922).
predicate(exp,1,'Exponent (base $e$)',8924,8926).
predicate(**,2,'Power function',8928,8935).
predicate(powm,3,'Integer exponent and modulo',8937,8942).
predicate(^,2,'Existential quantification (bagof/3, setof/3)',8944,8946).
predicate(pi,0,'Mathematical constant',8948,8950).
predicate(e,0,'Mathematical constant',8952,8954).
predicate(epsilon,0,'Floating point precision',8956,8959).
predicate(cputime,0,'Get CPU time',8961,8965).
predicate(eval,1,'Evaluate term as expression',8967,8979).
predicate(msb,1,'Most significant bit',8981,8986).
predicate(lsb,1,'Least significant bit',8988,8993).
predicate(popcount,1,'Count 1s in a bitvector',8995,8998).
predicate(arithmetic_function,1,'Register an evaluable function',9013,9038).
predicate(current_arithmetic_function,1,'Examine evaluable functions',9040,9050).
predicate(set_random,1,'Control random number generation',9055,9072).
predicate(is_list,1,'Type check for a list',9081,9095).
predicate(memberchk,2,'Deterministic member/2',9097,9099).
predicate(length,2,'Length of a list',9101,9109).
predicate(sort,2,'Sort elements in a list',9111,9117).
predicate(msort,2,'Sort, do not remove duplicates',9119,9122).
predicate(keysort,2,'Sort, using a key',9124,9138).
predicate(predsort,3,'Sort, using a predicate to determine the order',9140,9145).
predicate(findall,3,'Find all solutions to a goal',9150,9157).
predicate(findall,4,'Difference list version of findall/3',9159,9167).
predicate(bagof,3,'Find all solutions to a goal',9169,9207).
predicate(setof,3,'Find all unique solutions to a goal',9209,9212).
predicate(forall,2,'Prove goal for all solutions of another goal',9217,9225).
predicate(writeln,1,'Write term, followed by a newline',9241,9243).
predicate(writef,1,'Formatted write',9245,9247).
predicate(writef,2,'Formatted write on stream',9249,9308).
predicate(swritef,3,'Formatted write on a string',9310,9318).
predicate(swritef,2,'Formatted write on a string',9320,9322).
predicate(format,1,'Formatted output',9330,9332).
predicate(format,2,'Formatted output with arguments',9334,9472).
predicate(format,3,'Formatted output on a stream',9474,9484).
predicate(format_predicate,2,'Program format/[1,2]',9489,9517).
predicate(current_format_predicate,2,'Enumerate user-defined format codes',9519,9525).
predicate(tty_get_capability,3,'Get terminal parameter',9535,9543).
predicate(tty_goto,2,'Goto position on screen',9545,9549).
predicate(tty_put,2,'Write control string to terminal',9551,9557).
predicate(set_tty,2,'Set `tty\' stream',9559,9562).
predicate(tty_size,2,'Get row/column size of the terminal',9564,9578).
predicate(shell,2,'Execute OS command',9583,9598).
predicate(shell,1,'Execute OS command',9600,9602).
predicate(shell,0,'Execute interactive subshell',9604,9608).
predicate(win_exec,2,'Win32: spawn Windows task',9610,9617).
predicate(win_shell,3,'Win32: open document through Shell',9619,9628).
predicate(win_shell,2,'Win32: open document through Shell',9630,9632).
predicate(win_registry_get_value,3,'Win32: get registry value',9634,9654).
predicate(win_folder,2,'Win32: get special folder by CSIDL',9656,9669).
predicate(getenv,2,'Get shell environment variable',9671,9675).
predicate(setenv,2,'Set shell environment variable',9677,9686).
predicate(unsetenv,1,'Delete shell environment variable',9688,9692).
predicate(setlocale,3,'Set/query C-library regional information',9694,9706).
predicate(unix,1,'OS interaction',9708,9749).
predicate(get_time,1,'Get current time',9823,9826).
predicate(stamp_date_time,3,'Convert time-stamp to date structure',9828,9834).
predicate(date_time_stamp,2,'Convert sate structure to time-stamp',9836,9850).
predicate(date_time_value,3,'Extract info from a date structure',9852,9869).
predicate(format_time,3,'C strftime() like date/time formatter',9871,10033).
predicate(format_time,4,'date/time formatter with explicit locale',10035,10044).
predicate(parse_time,2,'Parse text to a time-stamp',10046,10048).
predicate(parse_time,3,'Parse text to a time-stamp',10050,10069).
predicate(day_of_the_week,2,'Determine ordinal-day from date',10071,10075).
predicate(window_title,2,'Win32: change title of window',10086,10089).
predicate(win_window_pos,1,'Win32: change size and position of window',10091,10114).
predicate(win_has_menu,0,'Win32: true if console menu is available',10116,10118).
predicate(win_insert_menu,2,'swipl-win.exe: add menu',10120,10131).
predicate(win_insert_menu_item,4,'swipl-win.exe: add item to menu',10133,10137).
predicate(access_file,2,'Check access permissions of a file',10142,10152).
predicate(exists_file,1,'Check existence of file',10154,10157).
predicate(file_directory_name,2,'Get directory part of path',10159,10164).
predicate(file_base_name,2,'Get file part of path',10166,10169).
predicate(same_file,2,'Succeeds if arguments refer to same file',10171,10176).
predicate(exists_directory,1,'Check existence of directory',10178,10182).
predicate(delete_file,1,'Remove a file from the file system',10184,10186).
predicate(rename_file,2,'Change name of file',10188,10194).
predicate(size_file,2,'Get size of a file in characters',10196,10198).
predicate(time_file,2,'Get last modification time of file',10200,10204).
predicate(absolute_file_name,2,'Get absolute path name',10206,10214).
predicate(absolute_file_name,3,'Get absolute path name with options',10216,10271).
predicate(is_absolute_file_name,1,'True if arg defines an absolute path',10273,10280).
predicate(file_name_extension,3,'Add, remove or test file extensions',10282,10290).
predicate(directory_files,2,'Get entries of a directory/folder',10292,10298).
predicate(expand_file_name,2,'Wildcard expansion of file names',10300,10317).
predicate(prolog_to_os_filename,2,'Convert between Prolog and OS filenames',10319,10326).
predicate(read_link,3,'Read a symbolic link',10328,10334).
predicate(tmp_file,2,'Create a temporary filename',10336,10346).
predicate(tmp_file_stream,3,'Create a temporary file and open it',10348,10375).
predicate(make_directory,1,'Create a folder on the file system',10377,10381).
predicate(delete_directory,1,'Remove a folder from the file system',10383,10387).
predicate(working_directory,2,'Query/change CWD',10389,10395).
predicate(chdir,1,'Compatibility: change working directory',10397,10399).
predicate(break,0,'Start interactive top-level',10404,10412).
predicate(abort,0,'Abort execution, return to top level',10414,10431).
predicate(halt,0,'Exit from Prolog',10433,10439).
predicate(halt,1,'Exit from Prolog with status',10441,10444).
predicate(prolog,0,'Run interactive top-level',10446,10455).
predicate(expand_query,4,'Expanded entered query',10457,10465).
predicate(expand_answer,2,'Expand answer of query',10467,10472).
predicate(protocol,1,'Make a log of the user interaction',10481,10484).
predicate(protocola,1,'Append log of the user interaction to file',10486,10489).
predicate(noprotocol,0,'Disable logging of user interaction',10491,10494).
predicate(protocolling,1,'On what file is user interaction logged',10496,10499).
predicate(trace,0,'Start the tracer',10510,10514).
predicate(tracing,0,'Query status of the tracer',10516,10519).
predicate(notrace,0,'Stop tracing',10521,10523).
predicate(guitracer,0,'Install hooks for the graphical debugger',10525,10530).
predicate(noguitracer,0,'Disable the graphical debugger',10532,10534).
predicate(trace,1,'Set trace-point on predicate',10536,10538).
predicate(trace,2,'Set/Clear trace-point on ports',10540,10560).
predicate(notrace,1,'Do not debug argument goal',10562,10567).
predicate(debug,0,'Test for debugging mode',10569,10583).
predicate(nodebug,0,'Disable debugging',10585,10588).
predicate(debugging,0,'Show debugger status',10590,10593).
predicate(spy,1,'Force tracer on specified predicate',10595,10598).
predicate(nospy,1,'Remove spy point',10600,10603).
predicate(nospyall,0,'Remove all spy points',10605,10607).
predicate(leash,1,'Change ports visited by the tracer',10609,10617).
predicate(visible,1,'Ports that are visible in the tracer',10619,10622).
predicate(unknown,2,'Trap undefined predicates',10624,10629).
predicate(style_check,1,'Change level of warnings',10631,10673).
predicate(statistics,2,'Obtain collected statistics',10678,10766).
predicate(statistics,0,'Show execution statistics',10768,10770).
predicate(time,1,'Determine time needed to execute goal',10772,10779).
predicate(profile,1,'Obtain execution statistics',10800,10804).
predicate(profile,3,'Obtain execution statistics',10806,10814).
predicate(show_profile,2,'Show results of the profiler',10816,10826).
predicate(show_profile,1,'Show results of the profiler',10828,10830).
predicate(profiler,2,'Obtain/change status of the profiler',10832,10837).
predicate(reset_profiler,0,'Clear statistics obtained by the profiler',10839,10841).
predicate(noprofile,1,'Hide (meta-) predicate for the profiler',10843,10849).
predicate(garbage_collect,0,'Invoke the garbage collector',10952,10959).
predicate(garbage_collect_atoms,0,'Invoke the atom garbage collector',10961,10969).
predicate(trim_stacks,0,'Release unused memory resources',10971,10989).
predicate(set_prolog_stack,2,'Modify stack characteristics',10991,11030).
predicate(prolog_stack_property,2,'Query properties of the stacks',11032,11035).
predicate(open_dde_conversation,3,'Win32: Open DDE channel',11077,11082).
predicate(close_dde_conversation,1,'Win32: Close DDE channel',11084,11089).
predicate(dde_request,3,'Win32: Make a DDE request',11091,11100).
predicate(dde_execute,2,'Win32: Execute command on DDE server',11102,11106).
predicate(dde_poke,3,'Win32: POKE operation on DDE server',11108,11111).
predicate(dde_register_service,2,'Win32: Become a DDE server',11122,11159).
predicate(dde_unregister_service,1,'Win32: Terminate a DDE service',11161,11164).
predicate(dde_current_service,2,'Win32: Examine DDE services provided',11166,11168).
predicate(dde_current_connection,2,'Win32: Examine open DDE connections',11170,11172).
predicate(dwim_match,2,'Atoms match in ``Do What I Mean\'\' sense',11177,11194).
predicate(dwim_match,3,'Atoms match in ``Do What I Mean\'\' sense',11196,11201).
predicate(wildcard_match,2,'Csh(1) style wildcard match',11203,11221).
predicate(sleep,1,'Suspend execution for specified time',11223,11233).
predicate(module,2,'Declare a module',11311,11323).
predicate(use_module,1,'Import a module',11339,11346).
predicate(use_module,2,'Import predicates from a module',11348,11374).
predicate(meta_predicate,1,'Quintus compatibility',11427,11489).
predicate(module,1,'Query/set current type-in module',11532,11545).
predicate(reexport,1,'Load files and re-export the imported predicates',11568,11572).
predicate(reexport,2,'Load predicates from a file and re-export it',11574,11578).
predicate(set_base_module,1,'Declare the associated global module',11633,11636).
predicate(import_module,2,'Query import modules',11638,11643).
predicate(add_import_module,3,'Add module to the auto-import list',11645,11649).
predicate(delete_import_module,2,'Remove module from import list',11651,11658).
predicate(export,1,'Export a predicate from a module',11687,11693).
predicate(import,1,'Import a predicate from a module',11695,11702).
predicate(module_transparent,1,'Indicate module based meta-predicate',11809,11813).
predicate(context_module,1,'Get context module of current goal',11815,11818).
predicate(strip_module,3,'Extract context module and term',11820,11826).
predicate(current_module,1,'Examine existing modules',11834,11839).
predicate(module_property,2,'Find properties of a module',11841,11856).
predicate(attvar,1,'Type test for attributed variable',12047,12051).
predicate(put_attr,3,'Put attribute on a variable',12053,12061).
predicate(get_attr,3,'Fetch named attribute from a variable',12063,12068).
predicate(del_attr,2,'Delete attribute from variable',12070,12076).
predicate(attr_unify_hook,2,'Attributed variable unification hook',12085,12096).
predicate(attr_portray_hook,2,'Attributed variable print hook',12098,12105).
predicate(attribute_goals,3,'Project attributes to goals',12107,12112).
predicate(copy_term,3,'Copy a term and obtain attribute-goals',12117,12129).
predicate(copy_term_nat,2,'Make a copy of a term without attributes',12131,12134).
predicate(term_attvars,2,'Find attributed variables in a term',12136,12143).
predicate(get_attrs,2,'Fetch all attributes of a variable',12153,12157).
predicate(put_attrs,2,'Set/replace all attributes on a variable',12159,12162).
predicate(del_attrs,1,'Delete all attributes from variable',12164,12167).
predicate(freeze,2,'Delay execution until variable is bound',12187,12194).
predicate(frozen,2,'Query delayed goals on var',12196,12199).
predicate(when,2,'Execute goal when condition becomes true',12201,12210).
predicate(dif,2,'Constrain two terms to be different',12212,12224).
predicate(call_residue_vars,2,'Find residual attributed variables',12226,12244).
predicate(b_setval,2,'Assign backtrackable global variable',12285,12291).
predicate(b_getval,2,'Fetch backtrackable global variable',12293,12300).
predicate(nb_setval,2,'Assign non-backtrackable global variable',12302,12306).
predicate(nb_getval,2,'Fetch non-backtrackable global variable',12308,12314).
predicate(nb_linkval,2,'Assign non-backtrackable global variable',12316,12337).
predicate(nb_current,2,'Enumerate non-backtrackable global variables',12339,12342).
predicate(nb_delete,1,'Delete a non-backtrackable global variable',12344,12346).
predicate(chr_option,2,'Specify CHR compilation options',12559,12597).
predicate(chr_constraint,1,'CHR Constraint declaration',12612,12687).
predicate(chr_type,1,'CHR Type declaration',12689,12815).
predicate(chr_trace,0,'Start CHR tracer',12952,12956).
predicate(chr_notrace,0,'Stop CHR tracer',12958,12962).
predicate(chr_leash,1,'Define CHR leashed ports',12964,12971).
predicate(chr_show_store,1,'List suspended CHR constraints',12973,12980).
predicate(find_chr_constraint,1,'Returns a constraint from the store',12982,12985).
predicate(thread_create,3,'Create a new Prolog task',13292,13352).
predicate(thread_self,1,'Get identifier of current thread',13354,13357).
predicate(thread_join,2,'Wait for Prolog task-completion',13359,13385).
predicate(thread_detach,1,'Make thread cleanup after completion',13387,13399).
predicate(thread_exit,1,'Terminate Prolog task with value',13401,13412).
predicate(thread_initialization,1,'Run action at start of thread',13414,13423).
predicate(thread_at_exit,1,'Register goal to be called at exit',13425,13433).
predicate(thread_setconcurrency,2,'Number of active threads',13435,13442).
predicate(thread_property,2,'Examine Prolog threads',13457,13494).
predicate(thread_statistics,3,'Get statistics of another thread',13496,13501).
predicate(mutex_statistics,0,'Print statistics on mutex usage',13503,13510).
predicate(thread_send_message,2,'Send message to another thread',13527,13543).
predicate(thread_get_message,1,'Wait for message',13545,13565).
predicate(thread_peek_message,1,'Test for message',13567,13573).
predicate(message_queue_create,1,'Create queue for thread communication',13575,13580).
predicate(message_queue_create,2,'Create queue for thread communication',13582,13595).
predicate(message_queue_destroy,1,'Destroy queue for thread communication',13597,13602).
predicate(thread_get_message,2,'Wait for message in a queue',13604,13607).
predicate(thread_peek_message,2,'Test for message in a queue',13609,13614).
predicate(message_queue_property,2,'Query message queue properties',13616,13664).
predicate(thread_signal,2,'Execute goal in another thread',13679,13697).
predicate(thread_local,1,'Declare thread-specific clauses for a predicate',13717,13746).
predicate(mutex_create,1,'Create a thread-synchronisation device',13780,13784).
predicate(mutex_create,2,'Create a thread-synchronisation device',13786,13792).
predicate(mutex_destroy,1,'Destroy a mutex',13794,13797).
predicate(with_mutex,2,'Run goal while holding mutex',13799,13810).
predicate(mutex_lock,1,'Become owner of a mutex',13812,13830).
predicate(mutex_trylock,1,'Become owner of a mutex (non-blocking)',13832,13835).
predicate(mutex_unlock,1,'Release ownership of mutex',13837,13841).
predicate(mutex_unlock_all,0,'Release ownership of all mutexes',13843,13847).
predicate(mutex_property,2,'Query mutex properties',13849,13863).
predicate(threads,0,'List running threads',13872,13874).
predicate(join_threads,0,'Join all terminated threads interactively',13876,13883).
predicate(interactor,0,'Start new thread with console and top-level',13885,13889).
predicate(attach_console,0,'Attach I/O console to thread',13903,13918).
predicate(tdebug,1,'Switch a thread into debug mode',13920,13928).
predicate(tdebug,0,'Switch all threads into debug mode',13930,13932).
predicate(tnodebug,1,'Switch off debug mode in a thread',13934,13936).
predicate(tnodebug,0,'Switch off debug mode in all threads',13938,13940).
predicate(tspy,2,'Set spy point and enable debugging in a thread',13942,13948).
predicate(tspy,1,'Set spy point and enable debugging in all threads',13950,13955).
predicate(tprofile,1,'Profile a thread for some period',13966,13970).
predicate(in_pce_thread,1,'Run goal in XPCE thread',14201,14213).
predicate(pce_dispatch,1,'Run XPCE GUI in separate thread',14215,14222).
predicate(pce_call,1,'Run goal in XPCE GUI thread',14224,14232).
predicate(load_foreign_library,1,'library(shlib) Load shared library (.so file)',14376,14377).
predicate(load_foreign_library,2,'library(shlib) Load shared library (.so file)',14379,14405).
predicate(use_foreign_library,1,'Load DLL/shared object (directive)',14407,14408).
predicate(use_foreign_library,2,'Load DLL/shared object (directive)',14410,14423).
predicate(unload_foreign_library,1,'library(shlib) Detach shared library (.so file)',14425,14426).
predicate(unload_foreign_library,2,'library(shlib) Detach shared library (.so file)',14428,14433).
predicate(current_foreign_library,2,'library(shlib) Examine loaded shared libraries (.so files)',14435,14437).
predicate(reload_foreign_libraries,0,'Reload DLLs/shared objects',14439,14442).
predicate(open_shared_object,2,'UNIX: Open shared library (.so file)',14454,14463).
predicate(open_shared_object,3,'UNIX: Open shared library (.so file)',14465,14474).
predicate(close_shared_object,1,'UNIX:  Close shared library (.so file)',14476,14478).
predicate(call_shared_object_function,2,'UNIX:  Call C-function in shared (.so) file',14480,14485).
predicate(qsave_program,2,'Create runtime application',18131,18189).
predicate(qsave_program,1,'Create runtime application',18191,18193).
predicate(autoload,0,'Autoload all predicates now',18195,18237).
predicate(volatile,1,'Predicates that are not saved',18239,18244).
predicate(resource,3,'Declare a program resource',18368,18402).
predicate(open_resource,3,'Open a program resource as a stream',18404,18423).
predicate(aggregate,3,'Aggregate bindings in Goal according to Template.',18613,18616).
predicate(aggregate,4,'Aggregate bindings in Goal according to Template.',18618,18621).
predicate(aggregate_all,3,'Aggregate bindings in Goal according to Template.',18623,18626).
predicate(aggregate_all,4,'Aggregate bindings in Goal according to Template.',18628,18632).
predicate(foreach,2,'True if the conjunction of instances of Goal using the bindings from Generator is true.',18634,18657).
predicate(free_variables,4,'In order to handle variables properly, we have to find all the universally quantified variables in the Generator.',18659,18682).
predicate(include,3,'Filter elements for which Goal succeed.',18697,18703).
predicate(exclude,3,'Filter elements for which Goal fails.',18705,18708).
predicate(partition,4,'Filter elements of List according to Pred.',18710,18714).
predicate(partition,5,'Filter list according to Pred in three sets.',18716,18721).
predicate(maplist,2,'True if Goal can succesfully be applied on all elements of List.',18723,18727).
predicate(maplist,3,'True if Goal can succesfully be applied to all succesive pairs of elements of List1 and List2.',18729,18732).
predicate(maplist,4,'True if Goal can succesfully be applied to all succesive triples of elements of List1..List3.',18734,18737).
predicate(assoc_to_list,2,'Convert association tree to list',18757,18760).
predicate(assoc_to_keys,2,'Translate assoc into a key list',18762,18765).
predicate(assoc_to_values,2,'Translate assoc into a value list',18767,18770).
predicate(empty_assoc,1,'Create/test empty association tree',18772,18774).
predicate(gen_assoc,3,'Enumerate members of association tree',18776,18779).
predicate(get_assoc,3,'Fetch key from association tree',18781,18784).
predicate(get_assoc,5,'Fetch key from association tree',18786,18789).
predicate(list_to_assoc,2,'Create association tree from list',18791,18794).
predicate(map_assoc,2,'Map association tree',18796,18798).
predicate(map_assoc,3,'Map association tree',18800,18803).
predicate(max_assoc,3,'Highest key in association tree',18805,18808).
predicate(min_assoc,3,'Lowest key in association tree',18810,18813).
predicate(ord_list_to_assoc,2,'Convert ordered list to assoc',18815,18818).
predicate(put_assoc,4,'Add Key-Value to association tree',18820,18824).
predicate(broadcast,1,'Send event notification',18848,18854).
predicate(broadcast_request,1,'Request all agents',18856,18870).
predicate(listen,2,'Listen to event notifications',18872,18885).
predicate(listen,3,'Listen to event notifications',18887,18922).
predicate(unlisten,1,'Stop listening to event notifications',18924,18926).
predicate(unlisten,2,'Stop listening to event notifications',18928,18931).
predicate(unlisten,3,'Stop listening to event notifications',18933,18936).
predicate(listening,3,'Who is listening to event notifications?',18938,18941).
predicate(format_to_chars,3,'Use format/2 to write to a list of character codes.',18956,18958).
predicate(format_to_chars,3,'Use format/2 to write to a list of character codes.',18960,18962).
predicate(write_to_chars,2,'Codes is a list of character codes produced by write/1 on Term.',18964,18966).
predicate(write_to_chars,3,'Codes is a difference-list of character codes produced by write/1 on Term.',18968,18971).
predicate(atom_to_chars,2,'Convert Atom into a list of character codes.',18973,18977).
predicate(atom_to_chars,3,'Convert Atom into a difference-list of character codes.',18979,18981).
predicate(number_to_chars,2,'Convert Atom into a list of character codes.',18983,18987).
predicate(number_to_chars,3,'Convert Number into a difference-list of character codes.',18989,18991).
predicate(read_from_chars,2,'Read Codes into Term.',18993,18998).
predicate(read_term_from_chars,3,'Read Codes into Term.',19000,19004).
predicate(open_chars_stream,2,'Open Codes as an input stream.',19006,19013).
predicate(with_output_to_chars,3,'Run Goal with as once/1.',19020,19023).
predicate(with_output_to_chars,4,'As with_output_to_chars/2, but Stream is unified with the temporary stream.',19025,19028).
predicate(check,0,'Program completeness and consistency',19036,19044).
predicate(list_undefined,0,'List undefined predicates',19046,19073).
predicate(list_autoload,0,'List predicates that require autoload',19075,19079).
predicate(list_redefined,0,'List locally redefined predicates',19081,19085).
predicate(in,2,'Var is an element of Domain.',19343,19357).
predicate(ins,2,'The variables in the list Vars are elements of Domain.',19359,19361).
predicate(indomain,1,'Bind Var to all feasible values of its domain on backtracking.',19363,19366).
predicate(label,1,'Equivalent to labeling([], Vars).',19368,19370).
predicate(labeling,2,'Labeling means systematically trying out values for the finite domain variables Vars until all of them are ground.',19372,19456).
predicate(all_different,1,'Vars are pairwise distinct.',19458,19460).
predicate(sum,3,'The sum of elements of the list Vars is in relation Rel to Expr, where Rel is #=, #=, #$<$, #$>$, Scle{} or #$>$=.',19462,19473).
predicate(scalar_product,4,'Cs is a list of integers, Vs is a list of variables and integers.',19475,19479).
predicate(#>=,2,'X is greater than or equal to Y.',19481,19483).
predicate(#=<,2,'X is less than or equal to Y.',19485,19487).
predicate(#=,2,'X equals Y.',19489,19491).
predicate(#\=,2,'X is not Y.',19493,19495).
predicate(#>,2,'X is greater than Y.',19497,19499).
predicate(#<,2,'X is less than Y.',19501,19512).
predicate(#\,1,'The reifiable constraint Q does _not_ hold.',19514,19522).
predicate(#<==>,2,'P and Q are equivalent.',19524,19563).
predicate(#==>,2,'P implies Q.',19565,19567).
predicate(#<==,2,'Q implies P.',19569,19571).
predicate(#/\,2,'P and Q hold.',19573,19575).
predicate(#\/,2,'P or Q holds.',19577,19586).
predicate(lex_chain,1,'Lists are lexicographically non-decreasing.',19588,19590).
predicate(tuples_in,2,'Relation must be a list of lists of integers.',19592,19631).
predicate(all_distinct,1,'Like all_different/1, with stronger propagation.',19633,19642).
predicate(serialized,2,'Constrain a set of intervals to a non-overlapping sequence.',19644,19660).
predicate(element,3,'The N-th element of the list of finite domain variables Vs is V.',19662,19665).
predicate(global_cardinality,2,'Equivalent to global_cardinality(Vs, Pairs, []).',19667,19676).
predicate(global_cardinality,3,'Vs is a list of finite domain variables, Pairs is a list of Key-Num pairs, where Key is an integer and Num is a finite domain variable.',19678,19694).
predicate(circuit,1,'True if the list Vs of finite domain variables induces a Hamiltonian circuit, where the k-th element of Vs denotes the successor of node k.',19696,19710).
predicate(automaton,3,'Equivalent to automaton(_, _, Signature, Nodes, Arcs, [], [], _), a common use case of automaton/8.',19712,19733).
predicate(automaton,8,'True if the finite automaton induced by Nodes and Arcs (extended with Counters) accepts Signature.',19735,19797).
predicate(transpose,2,'Invert the direction of all edges',19799,19858).
predicate(zcompare,3,'Analogous to compare/3, with finite domain variables A and B.',19860,19882).
predicate(chain,2,'Zs is a list of finite domain variables that are a chain with respect to the partial order Relation, in the order they appear in the list.',19884,19894).
predicate(fd_var,1,'True iff Var is a CLP(FD) variable.',19896,19898).
predicate(fd_inf,2,'Inf is the infimum of the current domain of Var.',19900,19902).
predicate(fd_sup,2,'Sup is the supremum of the current domain of Var.',19904,19906).
predicate(fd_size,2,'Size is the number of elements of the current domain of Var, or the atom *sup* if the domain is unbounded.',19908,19911).
predicate(fd_dom,2,'Dom is the current domain (see in/2) of Var.',19913,19919).
predicate(entailed,1,'Check if constraint is entailed',19962,19966).
predicate(inf,2,'Find the infimum of an expression',19968,19972).
predicate(sup,2,'Find the supremum of an expression',19974,19978).
predicate(minimize,1,'Minimizes an expression',19980,19984).
predicate(maximize,1,'Maximizes an expression',19986,19990).
predicate(bb_inf,5,'Infimum of expression for mixed-integer problems',19992,20001).
predicate(bb_inf,4,'Infimum of expression for mixed-integer problems',20003,20006).
predicate(bb_inf,3,'Infimum of expression for mixed-integer problems',20008,20011).
predicate(dump,3,'Dump constraints on variables',20013,20023).
predicate(csv_read_file,2,'Read a CSV file into a list of rows.',20127,20128).
predicate(csv_read_file,3,'Read a CSV file into a list of rows.',20130,20144).
predicate(csv,3,'Prolog DCG to `read/write\' CSV data.',20146,20147).
predicate(csv,4,'Prolog DCG to `read/write\' CSV data.',20149,20173).
predicate(csv_write_file,2,'Write a list of Prolog terms to a CSV file.',20175,20176).
predicate(csv_write_file,3,'Write a list of Prolog terms to a CSV file.',20178,20181).
predicate(debug,3,'Print debugging message on topic',20199,20212).
predicate(debugging,1,'Test where we are debugging topic',20214,20219).
predicate(debug,1,'Select topic for debugging',20221,20228).
predicate(nodebug,1,'Disable debug-topic',20230,20232).
predicate(list_debug_topics,0,'List registered topics for debugging',20234,20237).
predicate(assertion,1,'Make assertions about your program',20239,20253).
predicate(gensym,2,'Generate unique atoms from a base',20268,20273).
predicate(reset_gensym,1,'Reset a gensym key',20275,20279).
predicate(reset_gensym,0,'Reset all gensym keys',20281,20286).
predicate(member,2,'True if Elem is a member of List.',20299,20309).
predicate(append,3,'List1AndList2 is the concatination of List1 and List2.',20311,20313).
predicate(append,2,'Concatenate a list of lists.',20315,20321).
predicate(prefix,2,'True iff Part is a leading substring of Whole.',20323,20326).
predicate(select,3,'Is true when List1, with Elem removed results in List2.',20328,20330).
predicate(selectchk,3,'Semi-deterministic removal of first element in List that unifies Elem.',20332,20335).
predicate(select,4,'Is true when select(X, XList) and select(Y, YList) are true, X and Y appear in the same locations of their respective lists and same_length(XList, YList) is true.',20337,20348).
predicate(nextto,3,'True of Y follows X in List.',20354,20356).
predicate(delete,3,'Is true when Lis1, with all occurences of Elem deleted results in List2.',20358,20368).
predicate(nth0,3,'True if Elem is the Index\'th element of List.',20370,20374).
predicate(nth1,3,'Is true when Elem is the Index\'th element of List.',20376,20380).
predicate(last,2,'Last element of a list',20382,20389).
predicate(reverse,2,'Is true when the elements of List2 are in reverse order compared to List1.',20391,20394).
predicate(permutation,2,'permutation(Xs, Ys) is true when Xs is a permutation of Ys.',20396,20400).
predicate(flatten,2,'Is true it List2 is a non nested version of List1.',20402,20412).
predicate(sumlist,2,'Sum is the result of adding all numbers in List.',20414,20416).
predicate(max_list,2,'True if Max is the largest number in List.',20418,20420).
predicate(min_list,2,'True if Min is the largest number in List.',20422,20424).
predicate(numlist,3,'List is a list [Low, Low+1, ... High].',20426,20432).
predicate(is_set,1,'True if Set is a proper list without duplicates.',20434,20439).
predicate(list_to_set,2,'Remove duplicates from a list',20441,20447).
predicate(intersection,3,'True if Set3 unifies with the intersection of Set1 and Set2.',20449,20454).
predicate(union,3,'True if Set3 unifies with the union of Set1 and Set2.',20456,20461).
predicate(subset,2,'True if all elements of SubSet belong to Set as well.',20463,20468).
predicate(subtract,3,'Delete all elements from `Set\' that occur in `Delete\' (a set) and unify the result with `Result\'.',20470,20476).
predicate(empty_nb_set,1,'Test/create an empty non-backtrackable set',20505,20507).
predicate(add_nb_set,2,'Add term to a non-backtrackable set',20509,20512).
predicate(add_nb_set,3,'Add term to a non-backtrackable set',20514,20522).
predicate(gen_nb_set,2,'Generate members of non-backtrackable set',20524,20527).
predicate(size_nb_set,2,'Determine size of non-backtrackable set',20529,20531).
predicate(nb_set_to_list,2,'Convert non-backtrackable set to list',20533,20536).
predicate(www_open_url,1,'Open a web-page in a browser',20544,20564).
predicate(option,3,'Get an option from a OptionList.',20608,20614).
predicate(option,2,'Get an option from a OptionList.',20616,20623).
predicate(select_option,3,'Get and remove option from an option list.',20625,20629).
predicate(select_option,4,'Get and remove option with default value.',20631,20635).
predicate(merge_options,3,'Merge two option lists.',20637,20644).
predicate(meta_options,3,'Perform meta-expansion on options that are module-sensitive.',20646,20657).
predicate(ord_empty,1,'Test empty ordered set',20676,20679).
predicate(list_to_ord_set,2,'Create ordered set',20681,20683).
predicate(ord_add_element,3,'Add element to ordered set',20685,20688).
predicate(ord_del_element,3,'Delete element from ordered set',20690,20693).
predicate(ord_intersect,2,'Test non-empty intersection',20695,20697).
predicate(ord_intersection,3,'Compute intersection',20699,20701).
predicate(ord_disjoint,2,'Test empty intersection',20703,20706).
predicate(ord_subtract,3,'Delete set from set',20708,20711).
predicate(ord_union,3,'Union of two ordered sets',20713,20715).
predicate(ord_union,4,'Union and difference of two ordered sets',20717,20720).
predicate(ord_subset,2,'Test subset',20722,20724).
predicate(ord_memberchk,2,'Deterministically test membership',20726,20729).
predicate(pairs_keys_values,3,'True if Keys holds the keys of Pairs and Values the values.',20746,20754).
predicate(pairs_values,2,'Remove the keys from a list of Key-Value pairs.',20756,20759).
predicate(pairs_keys,2,'Remove the values from a list of Key-Value pairs.',20761,20764).
predicate(group_pairs_by_key,2,'Group values with the same key.',20766,20781).
predicate(transpose_pairs,2,'Swap Key-Value to Value-Key and sort the result on Value (the new key) using keysort/2.',20783,20786).
predicate(map_list_to_pairs,3,'Create a key-value list by mapping each element of List.',20788,20795).
predicate(phrase_from_file,2,'Process the content of File using the DCG rule Grammar.',20827,20851).
predicate(phrase_from_file,3,'As phrase_from_file/2, providing additional Options.',20853,20859).
predicate(stream_to_lazy_list,2,'Create a lazy list representing the character codes in Stream.',20861,20873).
predicate(xref_source,1,'Cross-reference analysis of source',20908,20913).
predicate(xref_current_source,1,'Examine cross-referenced sources',20915,20917).
predicate(xref_clean,1,'Remove analysis of source',20919,20921).
predicate(xref_defined,3,'Examine defined predicates',20923,20934).
predicate(xref_called,3,'Examine called predicates',20936,20938).
predicate(xref_exported,2,'Examine exported predicates',20940,20942).
predicate(xref_module,2,'Module defined by source',20944,20946).
predicate(xref_built_in,1,'Examine defined built-ins',20948,20953).
predicate(called_by,2,'Hook (prolog) Extend cross-referencer',20961,20974).
predicate(read_line_to_codes,2,'Read line from a stream',20987,20995).
predicate(read_line_to_codes,3,'Read line from a stream',20997,21018).
predicate(read_stream_to_codes,2,'Read contents of stream',21020,21022).
predicate(read_stream_to_codes,3,'Read contents of stream',21024,21026).
predicate(read_file_to_codes,3,'Read contents of file',21028,21034).
predicate(read_file_to_terms,3,'Read contents of file to Prolog terms',21036,21042).
predicate(record,1,'Define named fields in a term',21132,21137).
predicate(registry_get_key,2,'Get principal value of key',21156,21159).
predicate(registry_get_key,3,'Get associated value of key',21161,21163).
predicate(registry_set_key,2,'Set principal value of key',21165,21168).
predicate(registry_set_key,3,'Set associated value of key',21170,21173).
predicate(registry_delete_key,1,'Remove a key',21175,21177).
predicate(shell_register_file_type,4,'Register a file-type',21179,21185).
predicate(shell_register_dde,6,'Register DDE action',21187,21194).
predicate(shell_register_prolog,1,'Register Prolog',21196,21212).
predicate(assignment,2,'Solve assignment problem',21237,21243).
predicate(constraint,3,'Add linear constraint to state',21245,21255).
predicate(constraint,4,'Add named linear constraint to state',21257,21260).
predicate(constraint_add,4,'Extend a named constraint',21262,21266).
predicate(gen_state,1,'Create empty linear program',21268,21271).
predicate(maximize,3,'Maximize objective function in to linear constraints',21273,21278).
predicate(minimize,3,'Minimize objective function in to linear constraints',21280,21282).
predicate(objective,2,'Fetch value of objective function',21284,21287).
predicate(shadow_price,3,'Fetch shadow price in solved state',21289,21293).
predicate(transportation,4,'Solve transportation problem',21295,21303).
predicate(variable_value,3,'Fetch value of variable in solved state',21305,21314).
predicate(thread_pool_create,3,'Create a pool of threads.',21483,21503).
predicate(thread_pool_destroy,1,'Destroy the thread pool named Name.',21505,21509).
predicate(current_thread_pool,1,'True if Name refers to a defined thread pool.',21511,21513).
predicate(thread_pool_property,2,'True if Property is a property of thread pool Name.',21515,21536).
predicate(thread_create_in_pool,4,'Create a thread in Pool.',21538,21552).
predicate(vertices_edges_to_ugraph,3,'Create unweighted graph',21582,21600).
predicate(vertices,2,'Find vertices in graph',21602,21609).
predicate(edges,2,'Find edges in graph',21611,21619).
predicate(add_vertices,3,'Add vertices to graph',21621,21629).
predicate(del_vertices,3,'Delete vertices from graph',21631,21642).
predicate(add_edges,3,'Add edges to graph',21644,21654).
predicate(del_edges,3,'Delete edges from graph',21656,21667).
predicate(transpose,2,'Invert the direction of all edges',21669,21679).
predicate(neighbours,3,'Find neighbors of vertice',21681,21690).
predicate(neighbors,3,'Find neighbors of vertice',21692,21694).
predicate(complement,2,'Inverse presense of edges',21696,21706).
predicate(compose,3,'',21708,21716).
predicate(ugraph_union,3,'Union of two graphs',21718,21725).
predicate(top_sort,2,'Sort graph topologically',21727,21737).
predicate(top_sort,3,'Sort graph topologically',21739,21742).
predicate(transitive_closure,2,'Create transitive closure of graph',21744,21752).
predicate(reachable,3,'Find all reachable vertices',21754,21762).
predicate(global_url,3,'Translate a possibly relative URL into an absolute one.',21785,21789).
predicate(is_absolute_url,1,'True if URL is an absolute URL.',21791,21794).
predicate(http_location,2,'Construct or analyze an HTTP location.',21796,21807).
predicate(parse_url,2,'Construct or analyse a URL.',21809,21865).
predicate(parse_url,3,'Similar to parse_url/2 for relative URLs.',21867,21870).
predicate(www_form_encode,2,'En/Decode between native value and application/x-www-form-encoded.',21872,21873).
predicate(www_form_encode,2,'En/Decode between native value and application/x-www-form-encoded.',21875,21880).
predicate(set_url_encoding,2,'Query and set the encoding for URLs.',21882,21889).
predicate(url_iri,2,'Convert between a URL, encoding in US-ASCII and an IRI.',21891,21892).
predicate(url_iri,2,'Convert between a URL, encoding in US-ASCII and an IRI.',21894,21898).
predicate(parse_url_search,2,'Construct or analyze an HTTP search specification.',21900,21904).
predicate(file_name_to_url,2,'Translate between a filename and a file:Sidiv{} URL.',21906,21907).
predicate(file_name_to_url,2,'Translate between a filename and a file:Sidiv{} URL.',21909,21914).
predicate(prolog_current_frame,1,'Reference to goal\'s environment stack',21929,21935).
predicate(prolog_frame_attribute,3,'Obtain information on a goal environment',21937,22015).
predicate(prolog_choice_attribute,3,'Examine the choice-point stack',22017,22038).
predicate(deterministic,1,'Test deterministicy of current clause',22040,22047).
predicate(prolog_trace_interception,4,'library(user) Intercept the Prolog tracer',22052,22129).
predicate(prolog_skip_frame,1,'Perform `skip\' on a frame',22131,22138).
predicate(prolog_skip_level,2,'Indicate deepest recursion to trace',22140,22147).
predicate(prolog_exception_hook,4,'Rewrite exceptions',22157,22198).
predicate(exception,3,'Hook (user) Handle runtime exceptions',22213,22239).
predicate(prolog_list_goal,1,'Hook (user) Intercept tracer \'L\' command',22251,22257).
predicate(debug_control_hook,1,'Hook (prolog) Extend spy/1, etc.',22259,22284).
predicate(help_hook,1,'Hook (prolog) User-hook in the help-system',22286,22301).
predicate(prolog_load_file,2,'Hook (user) Program load_files/2',22310,22318).
predicate(comment_hook,3,'Hook (prolog) handle comments in sources',22320,22329).
predicate(rl_read_init_file,1,'Read readline(3) init file',22339,22343).
predicate(rl_add_history,1,'Add line to readline(3) history',22345,22348).
predicate(rl_write_history,1,'Write readline(3) history',22350,22353).
predicate(rl_read_history,1,'Read readline(3) history',22355,22357).
predicate(expects_dialect,1,'For which Prolog dialect is this code written?',22400,22426).
predicate(exists_source,1,'Check existence of a Prolog source',22428,22432).
predicate(source_exports,2,'Check whether source exports a predicate',22434,22437).
predicate(eval_license,0,'Evaluate licenses of loaded modules',22939,22945).
predicate(license,2,'Define license for named module',22947,22999).
predicate(license,1,'Define license for current file',23001,23004).


%   Predicate section/4

section([0],'Title Page',2,40).
section([1],'INTRODUCTION',42,698).
section([1,1],'SWI-Prolog',45,96).
section([1,1,1],'Books about Prolog',81,96).
section([1,2],'Status',98,111).
section([1,3],'Compliance to the ISO standard',113,127).
section([1,4],'Should you be using SWI-Prolog?',129,190).
section([1,5],'The XPCE GUI system for Prolog',192,261).
section([1,6],'Release Notes',263,640).
section([1,7],'Donate to the SWI-Prolog project',642,650).
section([1,8],'Acknowledgements',652,698).
section([2],'OVERVIEW',700,3027).
section([2,1],'Getting started quickly',703,791).
section([2,1,1],'Starting SWI-Prolog',706,763).
section([2,1,1,1],'Starting SWI-Prolog on Unix',709,740).
section([2,1,1,2],'Starting SWI-Prolog on Windows',742,763).
section([2,1,2],'Executing a query',765,791).
section([2,2],'The user\'s initialisation file',793,819).
section([2,3],'Initialisation files and goals',821,854).
section([2,4],'Command-line options',856,1042).
section([2,4,1],'Controlling the stack-sizes',925,952).
section([2,4,2],'Running goals from the commandline',954,976).
section([2,4,3],'Compiler options',978,1027).
section([2,4,4],'Maintenance options',1029,1042).
section([2,5],'GNU Emacs Interface',1044,1071).
section([2,6],'Online Help',1073,1147).
section([2,7],'Command-line history',1149,1174).
section([2,8],'Reuse of top-level bindings',1176,1221).
section([2,9],'Overview of the Debugger',1223,1393).
section([2,10],'Compilation',1395,1588).
section([2,10,1],'During program development',1398,1424).
section([2,10,2],'For running the result',1426,1588).
section([2,10,2,1],'Using PrologScript',1434,1504).
section([2,10,2,2],'Creating a shell-script',1506,1539).
section([2,10,2,3],'Creating a saved-state',1541,1552).
section([2,10,2,4],'Compilation using the -c command-line option',1554,1588).
section([2,11],'Environment Control (Prolog flags)',1590,2213).
section([2,12],'An overview of hook predicates',2215,2282).
section([2,13],'Automatic loading of libraries',2284,2377).
section([2,14],'Garbage Collection',2379,2384).
section([2,15],'Syntax Notes',2386,2617).
section([2,15,1],'ISO Syntax Support',2400,2617).
section([2,15,1,1],'Processor Character Set',2405,2411).
section([2,15,1,2],'Character Escape Syntax',2413,2514).
section([2,15,1,3],'Syntax for non-decimal numbers',2516,2524).
section([2,15,1,4],'Unicode Prolog source',2526,2571).
section([2,15,1,5],'Singleton variable checking',2573,2617).
section([2,16],'Infinite trees (cyclic terms)',2619,2631).
section([2,17],'Wide character support',2633,2755).
section([2,17,1],'Wide character encodings on streams',2660,2755).
section([2,17,1,1],'BOM: Byte Order Mark',2731,2755).
section([2,18],'System limits',2757,2927).
section([2,18,1],'Limits on memory areas',2760,2872).
section([2,18,1,1],'The heap',2859,2872).
section([2,18,2],'Other Limits',2874,2917).
section([2,18,3],'Reserved Names',2919,2927).
section([2,19],'SWI-Prolog and 64-bit machines',2929,3027).
section([2,19,1],'Supported platforms',2941,2949).
section([2,19,2],'Comparing 32- and 64-bits Prolog',2951,2983).
section([2,19,3],'Choosing between 32- and 64-bits Prolog',2985,3027).
section([3],'INITIALISING AND MANAGING A PROLOG PROJECT',3029,3802).
section([3,1],'The project source-files',3044,3208).
section([3,1,1],'File Names and Locations',3054,3131).
section([3,1,1,1],'File Name Extensions',3057,3076).
section([3,1,1,2],'Project Directories',3078,3097).
section([3,1,1,3],'Sub-projects using search-paths',3099,3131).
section([3,1,2],'Project Special Files',3133,3164).
section([3,1,3],'International source files',3166,3208).
section([3,2],'Using modules',3210,3253).
section([3,3],'The test-edit-reload cycle',3255,3321).
section([3,3,1],'Locating things to edit',3271,3289).
section([3,3,2],'Editing and incremental compilation',3291,3321).
section([3,4],'Using the PceEmacs built-in editor',3323,3577).
section([3,4,1],'Activating PceEmacs',3326,3332).
section([3,4,2],'Bluffing through PceEmacs',3334,3452).
section([3,4,2,1],'Edit modes',3347,3370).
section([3,4,2,2],'Frequently used editor commands',3372,3452).
section([3,4,3],'Prolog Mode',3454,3577).
section([3,4,3,1],'Finding your way around',3566,3577).
section([3,5],'The Graphical Debugger',3579,3632).
section([3,5,1],'Invoking the window-based debugger',3595,3632).
section([3,6],'The Prolog Navigator',3634,3640).
section([3,7],'Cross referencer',3642,3724).
section([3,8],'Accessing the IDE from your program',3726,3764).
section([3,9],'Summary of the IDE',3766,3802).
section([4],'BUILT-IN PREDICATES',3804,11233).
section([4,1],'Notation of Predicate Descriptions',3807,3848).
section([4,2],'Character representation',3850,3905).
section([4,3],'Loading Prolog source files',3907,4676).
section([4,3,1],'Conditional compilation and program transformation',4391,4569).
section([4,3,1,1],'Conditional compilation',4507,4569).
section([4,3,2],'Loading files, active code and threads',4571,4629).
section([4,3,2,1],'Threads and reloading running code',4605,4629).
section([4,3,3],'Quick load files',4631,4676).
section([4,4],'Listing and Editor Interface',4678,4811).
section([4,5],'Verify Type of a Term',4813,4902).
section([4,6],'Comparison and Unification of Terms',4904,5084).
section([4,6,1],'Standard Order of Terms',4923,4977).
section([4,6,2],'Special unification and comparison predicates',4979,5084).
section([4,7],'Control Predicates',5086,5191).
section([4,8],'Meta-Call Predicates',5193,5392).
section([4,9],'ISO compliant Exception handling',5394,5651).
section([4,9,1],'Debugging and exceptions',5437,5476).
section([4,9,2],'The exception term',5478,5490).
section([4,9,3],'Printing messages',5492,5651).
section([4,9,3,1],'Printing from libraries',5586,5651).
section([4,10],'Handling signals',5653,5746).
section([4,10,1],'Notes on signal handling',5713,5746).
section([4,11],'DCG Grammar rules',5748,5810).
section([4,12],'Database',5812,6059).
section([4,12,1],'Update view',5983,6002).
section([4,12,2],'Indexing databases',6004,6059).
section([4,13],'Declaring predicates properties',6061,6170).
section([4,14],'Examining the program',6172,6427).
section([4,15],'Input and output',6429,7063).
section([4,15,1],'ISO Input and Output Streams',6443,6871).
section([4,15,2],'Edinburgh-style I/O',6873,6982).
section([4,15,3],'Switching Between Edinburgh and ISO I/O',6984,7007).
section([4,15,4],'Write onto atoms, code-lists, etc.',7009,7063).
section([4,16],'Status of streams',7065,7136).
section([4,17],'Primitive character I/O',7138,7373).
section([4,18],'Term reading and writing',7375,7715).
section([4,19],'Analysing and Constructing Terms',7717,7905).
section([4,19,1],'Non-logical operations on terms',7827,7905).
section([4,20],'Analysing and Constructing Atoms',7907,8075).
section([4,21],'Character properties',8077,8250).
section([4,21,1],'Case conversion',8195,8212).
section([4,21,2],'White space normalization',8214,8222).
section([4,21,3],'Language specific comparison',8224,8250).
section([4,22],'Representing text in strings',8252,8329).
section([4,23],'Operators',8331,8437).
section([4,24],'Character Conversion',8439,8456).
section([4,25],'Arithmetic',8458,8998).
section([4,25,1],'Special purpose integer arithmetic',8468,8496).
section([4,25,2],'General purpose arithmetic',8498,8998).
section([4,25,2,1],'Arithmetic types',8544,8595).
section([4,25,2,2],'Rational number examples',8597,8628).
section([4,25,2,3],'Arithmetic Functions',8630,8998).
section([4,26],'Adding Arithmetic Functions',9000,9050).
section([4,27],'Misc arithmetic support predicates',9052,9072).
section([4,28],'Built-in list operations',9074,9145).
section([4,29],'Finding all Solutions to a Goal',9147,9212).
section([4,30],'Forall',9214,9225).
section([4,31],'Formatted Write',9227,9525).
section([4,31,1],'Writef',9238,9322).
section([4,31,2],'Format',9324,9484).
section([4,31,3],'Programming Format',9486,9525).
section([4,32],'Terminal Control',9527,9578).
section([4,33],'Operating System Interaction',9580,10137).
section([4,33,1],'Dealing with time and date',9751,10075).
section([4,33,1,1],'Time and date data-structures',9790,9818).
section([4,33,1,2],'Time and date predicates',9820,10075).
section([4,33,2],'Controlling the swipl-win.exe console window',10077,10137).
section([4,34],'File System Interaction',10139,10399).
section([4,35],'User Top-level Manipulation',10401,10472).
section([4,36],'Creating a Protocol of the User Interaction',10474,10499).
section([4,37],'Debugging and Tracing Programs',10501,10673).
section([4,38],'Obtaining Runtime Statistics',10675,10779).
section([4,39],'Execution profiling',10781,10947).
section([4,39,1],'Profiling predicates',10792,10849).
section([4,39,2],'Visualizing profiling data',10851,10898).
section([4,39,3],'Information gathering',10900,10947).
section([4,39,3,1],'Profiling in the Windows Implementation',10932,10947).
section([4,40],'Memory Management',10949,11035).
section([4,41],'Windows DDE interface',11037,11172).
section([4,41,1],'DDE client interface',11047,11111).
section([4,41,2],'DDE server mode',11113,11172).
section([4,42],'Miscellaneous',11174,11233).
section([5],'MODULES',11235,11912).
section([5,1],'Why Using Modules?',11259,11279).
section([5,2],'Defining a Module',11281,11323).
section([5,3],'Importing Predicates into a Module',11325,11374).
section([5,4],'Defining a meta-predicate',11376,11489).
section([5,5],'Overruling Module Boundaries',11491,11514).
section([5,6],'Interacting with modules from the toplevel',11516,11545).
section([5,7],'Composing modules from other modules',11547,11578).
section([5,8],'Operators and modules',11580,11610).
section([5,9],'Dynamic importing using import modules',11612,11658).
section([5,10],'Reserved Modules and using the `user\' module',11660,11675).
section([5,11],'An alternative import/export interface',11677,11702).
section([5,12],'Dynamic Modules',11704,11738).
section([5,13],'Transparent predicates:  definition and context module',11740,11826).
section([5,14],'Query the module system',11828,11856).
section([5,15],'Compatibility of the Module System',11858,11912).
section([6],'SPECIAL VARIABLES AND COROUTINING',11914,12361).
section([6,1],'Attributed variables',11961,12167).
section([6,1,1],'Attribute manipulation predicates',12044,12076).
section([6,1,2],'Attributed variable hooks',12078,12112).
section([6,1,3],'Operations on terms with attributed variables',12114,12143).
section([6,1,4],'Special purpose predicates for attributes',12145,12167).
section([6,2],'Coroutining',12169,12244).
section([6,3],'Global variables',12246,12361).
section([6,3,1],'Compatibility of SWI-Prolog Global Variables',12348,12361).
section([7],'CHR: CONSTRAINT HANDLING RULES',12363,13251).
section([7,1],'Introduction',12385,12412).
section([7,2],'Syntax and Semantics',12414,12597).
section([7,2,1],'Syntax',12417,12475).
section([7,2,2],'Semantics',12477,12597).
section([7,3],'CHR in SWI-Prolog Programs',12599,12842).
section([7,3,1],'Embedding in Prolog Programs',12602,12607).
section([7,3,2],'Constraint declaration',12609,12815).
section([7,3,3],'Compilation',12817,12842).
section([7,4],'Debugging',12844,12985).
section([7,4,1],'Ports',12854,12895).
section([7,4,2],'Tracing',12897,12944).
section([7,4,3],'CHR Debugging Predicates',12946,12985).
section([7,5],'Examples',12987,13055).
section([7,6],'Backwards Compatibility',13057,13135).
section([7,6,1],'The Old SICStus CHR implemenation',13060,13103).
section([7,6,2],'The Old ECLiPSe CHR implemenation',13105,13135).
section([7,7],'Programming Tips and Tricks',13137,13180).
section([7,8],'Compiler Errors and Warnings',13182,13251).
section([7,8,1],'CHR Compiler Errors',13188,13251).
section([8],'MULTI-THREADED APPLICATIONS',13253,14232).
section([8,1],'Creating and destroying Prolog threads',13289,13442).
section([8,2],'Monitoring threads',13444,13510).
section([8,3],'Thread communication',13512,13746).
section([8,3,1],'Message queues',13515,13664).
section([8,3,2],'Signalling threads',13666,13697).
section([8,3,3],'Threads and dynamic predicates',13699,13746).
section([8,4],'Thread synchronisation',13748,13863).
section([8,5],'Thread-support library(threadutil)',13865,13970).
section([8,5,1],'Debugging threads',13891,13955).
section([8,5,2],'Profiling threads',13957,13970).
section([8,6],'Unbounded thread creation',13972,13996).
section([8,7],'Multi-threaded mixed C and Prolog applications',13998,14168).
section([8,7,1],'A Prolog thread for each native thread (one-to-one)',14020,14093).
section([8,7,2],'Pooling Prolog engines (many-to-many)',14095,14168).
section([8,7,2,1],'Engines in single-threaded SWI-Prolog',14162,14168).
section([8,8],'Multithreading and the XPCE graphics system',14170,14232).
section([9],'FOREIGN LANGUAGE INTERFACE',14234,18107).
section([9,1],'Overview of the Interface',14253,14278).
section([9,2],'Linking Foreign Modules',14280,14547).
section([9,2,1],'What linking is provided?',14291,14299).
section([9,2,2],'What kind of loading should I be using?',14301,14317).
section([9,2,3],'library(shlib):    Utility library  for  loading  foreign  objects',14319,14442).
section([9,2,4],'Low-level operations on shared libraries',14444,14485).
section([9,2,5],'Static Linking',14487,14547).
section([9,3],'Interface Data types',14549,14716).
section([9,3,1],'Type term_t:  a reference to a Prolog term',14552,14666).
section([9,3,1,1],'Interaction with the garbage collector and stack-shifter',14655,14666).
section([9,3,2],'Other foreign interface types',14668,14716).
section([9,4],'The Foreign Include File',14718,17667).
section([9,4,1],'Argument Passing and Control',14721,14858).
section([9,4,1,1],'Non-deterministic Foreign Predicates',14740,14858).
section([9,4,2],'Atoms and functors',14860,14929).
section([9,4,2,1],'Atoms and atom-garbage collection',14895,14929).
section([9,4,3],'Analysing Terms via the Foreign Interface',14931,15450).
section([9,4,3,1],'Testing the type of a term',14944,15047).
section([9,4,3,2],'Reading data from a term',15049,15210).
section([9,4,3,3],'Exchanging text using length and string',15212,15274).
section([9,4,3,4],'Wide character versions',15276,15324).
section([9,4,3,5],'Reading a list',15326,15396).
section([9,4,3,6],'An example:  defining write/1 in C',15398,15450).
section([9,4,4],'Constructing Terms',15452,15587).
section([9,4,5],'Unifying data',15589,15976).
section([9,4,6],'Convience functions to generate Prolog exceptions',15978,16120).
section([9,4,7],'BLOBS: Using atoms to store arbitrary binary data',16122,16271).
section([9,4,7,1],'Defining a BLOB type',16144,16231).
section([9,4,7,2],'Accessing blobs',16233,16271).
section([9,4,8],'Exchanging GMP numbers',16273,16356).
section([9,4,9],'Calling Prolog from C',16358,16507).
section([9,4,9,1],'Predicate references',16371,16398).
section([9,4,9,2],'Initiating a query from C',16400,16507).
section([9,4,10],'Discarding Data',16509,16569).
section([9,4,11],'Foreign Code and Modules',16571,16610).
section([9,4,12],'Prolog exceptions in foreign code',16612,16739).
section([9,4,13],'Catching Signals (Software Interrupts)',16741,16814).
section([9,4,14],'Miscellaneous',16816,16976).
section([9,4,14,1],'Term Comparison',16819,16830).
section([9,4,14,2],'Recorded database',16832,16925).
section([9,4,14,3],'Getting file names',16927,16976).
section([9,4,15],'Errors and warnings',16978,16991).
section([9,4,16],'Environment Control from Foreign Code',16993,17051).
section([9,4,17],'Querying Prolog',17053,17085).
section([9,4,18],'Registering Foreign Predicates',17087,17195).
section([9,4,19],'Foreign Code Hooks',17197,17275).
section([9,4,20],'Storing foreign data',17277,17464).
section([9,4,20,1],'Examples for storing foreign data',17343,17464).
section([9,4,21],'Embedding SWI-Prolog in other applications',17466,17667).
section([9,4,21,1],'Threading, Signals and embedded Prolog',17628,17667).
section([9,5],'Linking embedded applications using swipl-ld',17669,17888).
section([9,5,1],'A simple example',17802,17888).
section([9,6],'The Prolog `home\' directory',17890,17924).
section([9,7],'Example of Using the Foreign Interface',17926,17989).
section([9,8],'Notes on Using Foreign Code',17991,18107).
section([9,8,1],'Memory Allocation',17994,18025).
section([9,8,2],'Compatibility between Prolog versions',18027,18039).
section([9,8,3],'Debugging and profiling foreign code (valgrind)',18041,18061).
section([9,8,4],'Name Conflicts in C modules',18063,18080).
section([9,8,5],'Compatibility of the Foreign Interface',18082,18107).
section([10],'GENERATING RUNTIME APPLICATIONS',18109,18501).
section([10,1],'Limitations of qsave_program',18246,18262).
section([10,2],'Runtimes and Foreign Code',18264,18330).
section([10,3],'Using program resources',18332,18454).
section([10,3,1],'Predicates Definitions',18365,18423).
section([10,3,2],'The swipl-rc program',18425,18454).
section([10,4],'Finding Application files',18456,18501).
section([10,4,1],'Passing a path to the application',18488,18501).
section([11],'THE SWI-PROLOG LIBRARY',18503,21914).
section([11,1],'library(aggregate):     Aggregation   operators  on   backtrackable',18527,18682).
section([11,1,0,1],'Acknowledgements',18607,18682).
section([11,2],'library(apply):  Apply predicates on a list',18684,18742).
section([11,3],'assoc:  Association lists',18744,18824).
section([11,4],'broadcast:  Broadcast and receive event notifications',18826,18941).
section([11,5],'library(charsio):  I/O on Lists of Character Codes',18943,19028).
section([11,6],'check:  Elementary completeness checks',19030,19085).
section([11,7],'library(clpfd):  Constraint Logic Programming over Finite Domains',19087,19919).
section([11,8],'clpqr:  Constraint Logic Programming over Rationals and Reals',19921,20110).
section([11,8,1],'Solver predicates',19953,20023).
section([11,8,2],'Syntax of the predicate arguments',20025,20064).
section([11,8,3],'Use of unification',20066,20083).
section([11,8,4],'Non-linear constraints',20085,20110).
section([11,9],'library(csv):  Process CSV (Comma-Separated Values) data',20112,20181).
section([11,10],'debug:  Some reusable code to help debugging applications',20183,20253).
section([11,11],'gensym:  Generate unique identifiers',20255,20286).
section([11,12],'library(lists):  List Manipulation',20288,20476).
section([11,13],'nb_set:  Non-backtrackable set',20478,20536).
section([11,14],'www_browser:  Activating your Web-browser',20538,20564).
section([11,15],'library(option):  Option list processing',20566,20657).
section([11,16],'ordsets:  Ordered Set Manipulation',20659,20729).
section([11,17],'library(pairs):  Operations on key-value lists',20731,20795).
section([11,18],'pio:  Pure I/O',20797,20873).
section([11,18,1],'library(pure_input):  Pure Input from files',20805,20873).
section([11,19],'prolog_xref:  Cross-reference data collection library',20875,20974).
section([11,19,1],'Extending the library',20955,20974).
section([11,20],'readutil:  Reading lines, streams and files',20976,21042).
section([11,21],'record:  Access named fields in a term',21044,21137).
section([11,22],'registry:  Manipulating the Windows registry',21139,21212).
section([11,23],'simplex:  Solve linear programming problems',21214,21445).
section([11,23,1],'Example 1',21316,21347).
section([11,23,2],'Example 2',21349,21406).
section([11,23,3],'Example 3',21408,21445).
section([11,24],'library(thread_pool):  Resource bounded thread management',21447,21552).
section([11,25],'ugraphs:  Unweighted Graphs',21554,21762).
section([11,26],'library(url):  Analysing and constructing URL',21764,21914).
section([12],'HACKERS CORNER',21916,22357).
section([12,1],'Examining the Environment Stack',21926,22047).
section([12,2],'Intercepting the Tracer',22049,22147).
section([12,3],'Adding context to errors:  prolog_exception_hook',22149,22198).
section([12,4],'Hooks using the exception predicate',22200,22239).
section([12,5],'Hooks for integrating libraries',22241,22301).
section([12,6],'Hooks for loading files',22303,22329).
section([12,7],'Readline Interaction',22331,22357).
section([13],'COMPATIBILITY WITH OTHER PROLOG DIALECTS',22359,22554).
section([13,1],'Some considerations for writing portable code',22439,22554).
section([14],'GLOSSARY OF TERMS',22556,22850).
section([15],'SWI-PROLOG LICENSE CONDITIONS AND TOOLS',22852,23045).
section([15,1],'The SWI-Prolog kernel and foreign libraries',22882,22914).
section([15,1,1],'The SWI-Prolog Prolog libraries',22897,22914).
section([15,2],'Contributing to the SWI-Prolog project',22916,22926).
section([15,3],'Software support to keep track of license conditions',22928,23009).
section([15,4],'License conditions inherited from used code',23011,23045).
section([15,4,1],'Cryptographic routines',23014,23045).
section([16],'SUMMARY',23047,24254).
section([16,1],'Predicates',23050,23763).
section([16,2],'Library predicates',23765,24115).
section([16,2,1],aggregate,23768,23776).
section([16,2,2],apply,23778,23788).
section([16,2,3],assoc,23790,23808).
section([16,2,4],broadcast,23810,23821).
section([16,2,5],charsio,23823,23841).
section([16,2,6],check,23843,23850).
section([16,2,7],csv,23852,23861).
section([16,2,8],lists,23863,23895).
section([16,2,9],option,23897,23905).
section([16,2,10],ordsets,23907,23923).
section([16,2,11],prologxref,23925,23937).
section([16,2,12],pairs,23939,23947).
section([16,2,13],pio,23949,23957).
section([16,2,13,1],pure_input,23952,23957).
section([16,2,14],readutil,23959,23968).
section([16,2,15],record,23970,23973).
section([16,2,16],registry,23975,23987).
section([16,2,17],ugraphs,23989,24010).
section([16,2,18],url,24012,24025).
section([16,2,19],www_browser,24027,24030).
section([16,2,20],'clp/clpfd',24032,24076).
section([16,2,21],clpqr,24078,24090).
section([16,2,22],'clp/simplex',24092,24106).
section([16,2,23],thread_pool,24108,24115).
section([16,3],'Arithmetic Functions',24117,24187).
section([16,4],'Operators',24189,24254).
section([17],'Bibliography',24256,25560).


%   Predicate function/3

function('PL_thread_self',14031,14036).
function('PL_unify_thread_id',14038,14042).
function('PL_thread_attach_engine',14044,14071).
function('PL_thread_destroy_engine',14073,14083).
function('PL_thread_at_exit',14085,14093).
function('PL_create_engine',14122,14131).
function('PL_destroy_engine',14133,14138).
function('PL_set_engine',14140,14160).
function('PL_new_term_ref',14612,14618).
function('PL_new_term_refs',14620,14635).
function('PL_copy_term_ref',14637,14641).
function('PL_reset_term_refs',14643,14653).
function('PL_succeed',14731,14733).
function('PL_fail',14735,14738).
function('PL_retry',14789,14797).
function('PL_retry_address',14799,14803).
function('PL_foreign_control',14805,14810).
function('PL_foreign_context',14812,14817).
function('PL_foreign_context_address',14819,14858).
function('PL_new_atom',14866,14870).
function('PL_atom_chars',14872,14880).
function('PL_new_functor',14882,14885).
function('PL_functor_name',14887,14889).
function('PL_functor_arity',14891,14893).
function('PL_register_atom',14908,14912).
function('PL_unregister_atom',14914,14929).
function('PL_term_type',14947,14990).
function('PL_is_variable',14992,14994).
function('PL_is_ground',14996,14999).
function('PL_is_atom',15001,15003).
function('PL_is_string',15005,15007).
function('PL_is_integer',15009,15011).
function('PL_is_float',15013,15015).
function('PL_is_compound',15017,15019).
function('PL_is_functor',15021,15025).
function('PL_is_list',15027,15030).
function('PL_is_pair',15032,15035).
function('PL_is_atomic',15037,15039).
function('PL_is_number',15041,15043).
function('PL_is_acyclic',15045,15047).
function('PL_get_atom',15056,15063).
function('PL_get_atom_chars',15065,15070).
function('PL_get_string_chars',15072,15078).
function('PL_get_chars',15080,15133).
function('PL_get_list_chars',15135,15138).
function('PL_get_integer',15140,15144).
function('PL_get_long',15146,15152).
function('PL_get_int64',15154,15159).
function('PL_get_intptr',15161,15166).
function('PL_get_bool',15168,15171).
function('PL_get_pointer',15173,15179).
function('PL_get_float',15181,15183).
function('PL_get_functor',15185,15189).
function('PL_get_name_arity',15191,15195).
function('PL_get_module',15197,15200).
function('PL_get_arg',15202,15205).
function('_PL_get_arg',15207,15210).
function('PL_get_atom_nchars',15221,15223).
function('PL_get_list_nchars',15225,15227).
function('PL_get_nchars',15229,15231).
function('PL_put_atom_nchars',15233,15235).
function('PL_put_string_nchars',15237,15239).
function('PL_put_list_ncodes',15241,15243).
function('PL_put_list_nchars',15245,15247).
function('PL_unify_atom_nchars',15249,15251).
function('PL_unify_string_nchars',15253,15255).
function('PL_unify_list_ncodes',15257,15259).
function('PL_unify_list_nchars',15261,15266).
function('PL_new_atom_nchars',15268,15270).
function('PL_atom_nchars',15272,15274).
function('PL_new_atom_wchars',15289,15293).
function('PL_atom_wchars',15295,15303).
function('PL_get_wchars',15305,15308).
function('PL_unify_wchars',15310,15314).
function('PL_unify_wchars_diff',15316,15324).
function('PL_get_list',15353,15356).
function('PL_get_head',15358,15360).
function('PL_get_tail',15362,15364).
function('PL_get_nil',15366,15368).
function('PL_skip_list',15370,15396).
function('PL_put_variable',15464,15467).
function('PL_put_atom',15469,15472).
function('PL_put_atom_chars',15474,15478).
function('PL_put_string_chars',15480,15483).
function('PL_put_string_nchars',15485,15489).
function('PL_put_list_chars',15491,15493).
function('PL_put_integer',15495,15497).
function('PL_put_int64',15499,15501).
function('PL_put_pointer',15503,15506).
function('PL_put_float',15508,15510).
function('PL_put_functor',15512,15517).
function('PL_put_list',15519,15521).
function('PL_put_nil',15523,15525).
function('PL_put_term',15527,15529).
function('PL_cons_functor',15531,15556).
function('PL_cons_functor_v',15558,15563).
function('PL_cons_list',15565,15587).
function('PL_unify',15637,15669).
function('PL_unify_atom',15671,15673).
function('PL_unify_bool',15675,15677).
function('PL_unify_chars',15679,15692).
function('PL_unify_atom_chars',15694,15697).
function('PL_unify_list_chars',15699,15701).
function('PL_unify_string_chars',15703,15707).
function('PL_unify_string_nchars',15709,15713).
function('PL_unify_integer',15715,15717).
function('PL_unify_int64',15719,15721).
function('PL_unify_float',15723,15725).
function('PL_unify_pointer',15727,15730).
function('PL_unify_functor',15732,15737).
function('PL_unify_list',15739,15770).
function('PL_unify_nil',15772,15774).
function('PL_unify_arg',15776,15778).
function('PL_unify_term',15780,15931).
function('PL_chars_to_term',15933,15965).
function('PL_quote',15967,15976).
function('PL_get_atom_ex',16008,16011).
function('PL_get_integer_ex',16013,16017).
function('PL_get_long_ex',16019,16023).
function('PL_get_int64_ex',16025,16029).
function('PL_get_intptr_ex',16031,16035).
function('PL_get_size_ex',16037,16041).
function('PL_get_bool_ex',16043,16046).
function('PL_get_float_ex',16048,16051).
function('PL_get_char_ex',16053,16057).
function('PL_get_pointer_ex',16059,16062).
function('PL_get_list_ex',16064,16067).
function('PL_get_nil_ex',16069,16072).
function('PL_unify_list_ex',16074,16077).
function('PL_unify_nil_ex',16079,16082).
function('PL_unify_bool_ex',16084,16094).
function('PL_instantiation_error',16096,16099).
function('PL_representation_error',16101,16103).
function('PL_type_error',16105,16107).
function('PL_domain_error',16109,16111).
function('PL_existence_error',16113,16115).
function('PL_permission_error',16117,16120).
function('PL_unregister_blob_type',16223,16231).
function('PL_is_blob',16241,16244).
function('PL_unify_blob',16246,16249).
function('PL_put_blob',16251,16259).
function('PL_get_blob',16261,16265).
function('PL_blob_data',16267,16271).
function('PL_get_mpz',16330,16336).
function('PL_get_mpq',16338,16345).
function('PL_unify_mpz',16347,16350).
function('PL_unify_mpq',16352,16356).
function('PL_pred',16379,16384).
function('PL_predicate',16386,16389).
function('PL_predicate_info',16391,16398).
function('PL_open_query',16412,16475).
function('PL_next_solution',16477,16482).
function('PL_cut_query',16484,16488).
function('PL_close_query',16490,16493).
function('PL_call_predicate',16495,16499).
function('PL_call',16501,16507).
function('PL_open_foreign_frame',16518,16524).
function('PL_close_foreign_frame',16526,16530).
function('PL_discard_foreign_frame',16532,16535).
function('PL_rewind_foreign_frame',16537,16569).
function('PL_context',16577,16580).
function('PL_strip_module',16582,16601).
function('PL_module_name',16603,16605).
function('PL_new_module',16607,16610).
function('PL_raise_exception',16687,16714).
function('PL_throw',16716,16719).
function('PL_exception',16721,16733).
function('PL_signal',16761,16787).
function('PL_raise',16789,16793).
function('PL_handle_signals',16795,16806).
function('PL_get_signum_ex',16808,16814).
function('PL_compare',16822,16825).
function('PL_same_compound',16827,16830).
function('PL_record',16850,16855).
function('PL_recorded',16857,16863).
function('PL_erase',16865,16900).
function('PL_record_external',16902,16914).
function('PL_recorded_external',16916,16920).
function('PL_erase_external',16922,16925).
function('PL_get_file_name',16935,16968).
function('PL_get_file_nameW',16970,16976).
function('PL_warning',16986,16991).
function('PL_action',16996,17051).
function('PL_query',17056,17085).
function('PL_register_foreign_in_module',17090,17147).
function('PL_register_foreign',17149,17152).
function('PL_register_extensions_in_module',17154,17190).
function('PL_register_extensions',17192,17195).
function('PL_dispatch_hook',17202,17212).
function('PL_abort_hook',17214,17223).
function('PL_abort_unhook',17225,17228).
function('PL_on_halt',17230,17236).
function('PL_agc_hook',17238,17275).
function('PL_initialise',17501,17557).
function('PL_is_initialised',17559,17565).
function('PL_install_readline',17567,17572).
function('PL_toplevel',17574,17577).
function('PL_cleanup',17579,17602).
function('PL_cleanup_fork',17604,17619).
function('PL_halt',17621,17626).
function('PL_malloc',18009,18014).
function('PL_realloc',18016,18020).
function('PL_free',18022,18025).
function('PL_license',23006,23009).