OpenLLM-France/wikimedia huggingface dataset:
# Prolog/Search techniques

Prolog's default search algorithm is depth-first search (DFS), which is sometimes not convenient: DFS doesn't always find the solution for all problems, and when it does, it might not find the optimal solution.
Let's say we want to find the shortest path through a directed graph with nodes represented by symbols and arc by the predicate arc/2. Then we can easily implement iterative deepening search to find the shortest path:
path/3 backtracks over paths, ordered by length, if at least one path exists. Let's try it out:
How this works: when length/2 is called with a variable first argument, it generates a list of the desired length containing fresh variables. When, in addition, the second argument is a variable, it backtracks over all possible lengths starting at zero and stepping by one. The helper predicate path_r is called each time with a fixed path length.
# Prolog/Solving a Logic Puzzle

Let's work with a fun logic problem. You can work out the solution in your head or on scratch paper, then we'll solve it using Prolog.
Consider a group of ten friends who want to visit a new city somewhere in the world. They vote on seven potential destinations:
* Cairo
* London
* Beijing
* Moscow
* Mumbai
* Nairobi
* Jakarta
One city received four votes, two cities received two votes each, two cities received one vote each, and the remaining two cities received zero votes. How many votes did each of the cities receive?
* Beijing and Cairo got different numbers of votes.
* Moscow either got the most votes, or it got zero votes.
* Cairo got more votes than Jakarta did.
* In the list of cities above, each of the two cities that got two votes has a city that got no votes immediately above it in the list.
* Either Jakarta got one fewer votes than London did, or it got one fewer vote than Beijing did.

## Solution in Prolog

Here is one possible solution in Prolog. We'll use the city names to represent the number of votes each received. With the generate-and-test paradigm that Prolog encourages, we'll generate all permutations of votes and test them against the puzzle rules.

### Distribution of votes

One city received four votes, two cities received two votes each, two cities received one vote each, and the remaining two cities received zero votes. We can use the built-in permutation predicate.

### Rule 1

Beijing and Cairo got different numbers of votes. We can use built-in comparison operators. Recall that the semi-colon means OR.

### Rule 2

Moscow either got the most votes, or it got zero votes.

### Rule 3

Cairo got more votes than Jakarta did. This is a straight comparison operation.

### Rule 4

In the list of cities above, each of the two cities that got two votes has a city that got no votes immediately above it in the list. This rule is tougher to solve. You might consider modifying the built-in member predicate to look for pairs. Here instead we define a count predicate to count the number of times a pair appears in a list. Then we look for a list in which 0,2 appears twice. This is a special case pattern matcher for [X,Y], X \= Y. Will not work for the general case of [X,X] as it skips the matching 2 elements after a match.

### Rule 5

Either Jakarta got one fewer votes than London did, or it got one fewer vote than Beijing did. Recall that 'is' evaluates the operation.

### Complete solution

Prolog returns the following values:
In fact, Prolog returns the solution above eight times. That's because two cities share a vote total in three separate places (2^3 = 8), and Prolog finds each different way of arriving at the same solution.
# Prolog/Variables

A PROLOG variable can represent anything; a number, a name, a structure, an array, something as complicated as the known universe. A PROLOG program works by constraining the variables until eventually they have particular values; then telling you what the values are. A simple program might be
and when you run it, the result will be
The program might not go as far as to constrain the variables to have exact values, so you might get
where the '_' means that you have a variable remaining as part of the solution.
You can also get a 'Yes' result for more than one value of the variables; this is called 'nondeterminism', and is OK. If no values of the variables will make a solution, PROLOG will say 'No'.
prev: Recursive Rules next: Lists
# Prolog/Reading and Writing code

This section gives guidelines and tips on reading and writing prolog code, and how to think about prolog code in general.

## Examples

fac(0,1).
fac(A,B) :- A > 0, C is A-1, fac(C,D), B is A*D.

## Exercises

previous: Cuts and Negation next: Difference Lists
# Prolog/Rules

This section deals with rules, a general way to state when a predicate is true.

## Rules

So far we haven't really been doing any programming, just defining objects and their properties. The first step to programming in prolog is the use of rules. With rules we state that a predicate is true, provided that other predicates are true. A rule looks like this:
This says that a is true, if b, c and d are true. If we have the following database,
, and we were to ask Prolog if a is true,
Prolog would take the query (or goal) a and from that generate the sub-goals b, c and d. It can see that b and c are true, directly, as they are stated as facts, but d is only true if e is true, which leads to another sub-goal, e. Since e is also a fact, prolog will answer yes.

## Rules with Variables

We can use predicates with terms as well.
states that a corvette is a car if it has wheels and windows. This isn't a very useful statement, as we could also simply state that a corvette is a car with
We can however use variables in rules. This way we can state, for instance that anything is a car provided that it has wheels and windows:
The first line states that for car(A) to be true, haswheels(A) and haswindows(A) need to be true. If prolog is asked whether a corvette is a car with
it will bind A to corvette, and get the sub-goals haswheels(corvette) and haswindows(corvette). If it can prove both these goals (which it can), then car(corvette) must be true. When using variables in a program it's important to note that a variable doesn't mean anything beyond the sentence it's in. If two sentences use the variable A, it's not the same variable. For example:
The A in the first line simply shows that the term of the predicate bird needs to be the same as the term of the predicate hasfeathers, it has nothing to do with the A in the second line.
Now we can return to our original program and add some rules.
We can ask prolog who is the father of eliza:
Or to list all fathers in the database and their respective children:

## Exercises

If you've used any other programming language, you may be familiar with recursion, which refers to a function calling itself. Prolog is particularly well suited for recursion, although in our case, it will be a predicate referring to itself, rather than a function. Go to the next section to see how and why this is done.
# Prolog/Sorting

Sorting is a fundamental task in many programs. We explain how to write an implementation of the fast and general merge sort algorithm in Prolog.

### The basic algorithm

The merge sort algorithm looks as follows:
The first thing we have to do to implement any algorithm presented in this style in Prolog is to translate it from the language of functions to the language of predicates. Recall that Prolog has no return construct, but we can use an unbound variable as an output mechanism. So, we will write a predicate mergesort(Xs, S) that, given a list Xs, "returns" a sorted variant by binding S to it.
How about the if-then-else construct in the algorithm? We can translate that directly, but we also have the option of using Prolog's pattern matching. Because the conditional checks for ≤1, we have three structural cases: the empty list, a list of one element and the catch-all case. So, let's write our first merge sort.
There's the skeleton of the algorithm. We have left out the definition of the helper predicates split_in_half and merge so far, but for a functioning sorting predicate, we must of course define those as well. Let's start with merge, which takes two sorted lists and produces a new sorted list containing all the elements in them. We use Prolog's recursion and pattern matching to implement merge.
This predicate works, but it's repetitive and not very efficient. We'll revisit it in a minute, but first we must define split_in_half, which splits a list into two lists of roughly equal size (roughly because it may have an odd number of elements). To do so, we need the length of a list, which we unfortunately do not get as input (see merge_sort), so we need to compute that. We use a helper predicate split_at to actually split the list after computing the length.
Exercise. Before continuing to the definition of split_at, try to implement it yourself. Use recursion and case matching on both the input list and the second, length, argument.
Okay, now for split_at:
If the definition of split_at seems magical, then try to read it declaratively: "a list Xs, split after its first N elements into Ys and Zs, means that Ys has length N and Ys and Zs can be appended to retrieve Xs." The fact that this works is an example of Prolog's "bidirectional" power: many predicates can be run in "reverse order" to get the inverse of a computation.

### Cleaning up

We now have a merge sort program that will sort any list, but some parts of it aren't particularly elegant. Let's first revisit merge_sort. We translated an if-then-else construct to multiple clauses since that's so common in Prolog, but we really had no reason to do so: the algorithm is deterministic, so there should no backtracking going on. Let's try a more direct rewrite of the pseudocode using Prolog's own if-then-else.
Now, let's tackle merge's efficiency and readability, as promised. The last two cases of this predicate look like a copy-paste, which is always a code smell. Also, there may be unnecessary backtracking going on. Let's rewrite merge using an if-then-else as well:
# Prolog/Modifying the Database

This page is a stub.
From the SWI manual:
Examples:
Let's start with an empty database:
# Sport Innovation/Jessica Watson/Background

Jessica Watson: The Youngest Person to Solo Circumnavigate the Globe

# Background
## Project Specification

The objectives set by Jessica Watson and her team defined the project specification. These key targets included:
* Journey solo, unassisted and non-stop
* Depart and return from the same port
* Cross all lines of longitude
* Cross the equator entering the Northern Hemisphere at least once, and
* Round the Southern landmarks of South America and South Africa
* Cover an orthodromic distance of at least 21,600nmi (40,000km)

## Stakeholders

Jessica Watson, Family & Friends
General Public
Management & Public Relations Team
5 Oceans Media, headed by Public Relations Manager Andrew Fraser, was responsible for all management aspects of the Jessica Watson journey; website, sponsorship, marketing communications and associated events. More recently, they have presented Watson’s challenge through successful documentaries (“210 Days” and “Another Challenge”), a book release (“True Spirit”) and in early stages of production, a film adaptation called “True Spirit” (McNamara & Nable, 2012).
Sponsors & Suppliers
Major Sponsors:
* Ella Baché
* Tourism Queensland
* Infiniti
* Macquarie Life Active
* Mobile Travel Agents
Voyage Sponsors:
Watson had 40 Voyage Sponsors, namely OneHD and Panasonic which covered her endeavour and supplied electronics such as ToughBooks and video cameras which she used to communicate with; regularly updating online blogs, streaming live calls with media, family and support team, and captured video content of the voyage (Jessica Watson, 2013).
Project Scope
Project Lifecycle, Phases & Tasks
Evaluation of Project Outcomes
References
# Jessica Watson: The Youngest Person to Solo Circumnavigate the Globe
## History of Solo Circumnavigation

On 24 April 1895, New England-born Captain Joshua Slocum was the first to complete a single-handed voyage of the world. Setting sail from Boston, Slocum travelled 74,000km before returning to Rhode Island on 27 June 1898 (Joshua Slocum Society International, 2009). Since Slocum, many others have challenged and succeeded his record.
Following the initiation of this WikiBook, the current record for youngest non-stop solo circumnavigation has been surpassed by 16 year old Dutch Laura Dekker on 21 January 2013. It was Dekker’s issues with the Dutch courts that led the governing body of around-the-world sailing, the World Sailing Speed Record Council (WSSRC)] to no longer recognise the “youngest” category, in an attempt to discourage ever-younger sailors from attempting such risky endeavours (Johnston, 2010).

## Jessica Watson

Born 18 May 1993 on Australia's Gold Coast, Jessica Watson is known for becoming the youngest person to sail solo, unassisted and non-stop around the world (Jessica Watson, 2013). After leaving Sydney Harbour on 18 October 2009, Watson accomplished her circumnavigation on 15 May 2010, only three days before her 17th birthday. Her journey took 210 days and covered over 24,000 nautical miles (Jessica Watson, 2013).
Although Watson successfully completed her voyage, it was later announced that she did not satisfy International Sailing Federation’s WSSRC criteria for world record status as she failed to travel far enough North of the equator (McMahon, 2010).
Background
Project Scope
Project Lifecycle, Phases & Tasks
Evaluation of Project Outcomes
References
# Sport Innovation/Jessica Watson/References

Jessica Watson: The Youngest Person to Solo Circumnavigate the Globe
Background
Project Scope
Project Lifecycle, Phases & Tasks
Evaluation of Project Outcomes

# References

Jessica Watson. (2013). Retrieved 16 February, 2013, from http://www.jessicawatson.com.au/
Johnston, C. (2010, May 15). Sailing into storm of publicity and sponsorship deals. The Age. Retrieved from http://www.theage.com.au/national/sailing-into-storm-of-publicity-and-sponsorship-deals-20100514-v4n9.html
Knudsen, N. (2009, 27 September). Jessica Watson blames instruments for bulk carrier collision. Sail World. Retrieved from http://www.sail-world.com/Australia/Jessica-Watson-blames-instruments-for-bulk-carrier-collision/61691
Knudsen, N. (2010, May 5). Jessica Watson: Keeping the record straight. Sail World. Retrieved from http://www.sail-world.com/CruisingAus/Jessica-Watson:--Keeping-the-Record-Straight/69108
Joshua Slocum Society International. (2011). Retrieved 17 February, 2013, from http://www.joshuaslocumsocietyintl.org/
Konkolski, R. (2009). Solo Circumnavigation. Retrieved 17 February, 2013, from http://www.solocircumnavigation.com/
McIntyre, D. (2009, August 26). The making of Pink Lady. Trade-a-Boat. Retrieved from http://www.tradeaboat.com.au/news-and-reviews/article/articleid/58540.aspx
McMahon, N. (2010, May 9). Jessica sails into a row, but who's setting her course? The Age. Retrieved from http://www.theage.com.au/national/jessica-sails-into-a-row-but-whos-setting-her-course-20100508-ul2u.html
McNamara, S. & Nable, M. (2012). True Spirit. Retrieved 16 February, 2013, from http://www.sunstarentertainment.com.au/truespirit.html
# Executive Summary

This article discusses the role of innovation and collaboration within International Management Group and Under Armour, two large international enterprises. IMG Academies in conjunction with Under Armour have developed a unique comprehensive athletic training platform that will establish a global measurement standard for improved sports performance, health and fitness called Combine360. As with any business innovation however, there are challenges and competitors that must be addressed to sustain competitive advantage.
The article contains a general background of International Management Group and Under Armour. A closer look into IMG Academies and its establishment is relevant to the Case Study as it is where the product innovation is distributed and used. A background of the partnership between Under Armour and IMG Academies in specific relation towards the innovation and establishment of the athletic testing tool C360 is examined. A case study of C360 follows including various important elements such as the program structure, and target market. This case study contains a SWOT analysis and an examination of its potential for innovation, competitive advantage and sustainability. A close competitor’s analysis including strategies and differentiation follows highlighting, Nike SPARQ. To conclude is a critical discussion of the barriers to innovation in the context of the organisations, IMG and Under Armour, relative to their size.
Next: IMG Academies
# Sport Innovation/IMG Combine360/References

[1] IMG World [2] IMG Academies Official Site
[3]IMG Sports Camps Official Site
[4] http://www.uabiz.com/
[5] http://www.uabiz.com/company/about.cfm
[6] http://www.imgworld.com/press_room/fullstory.sps?iType=13708&iNewsid=6642304&iCategoryID=12531
[7] http://www.imgworld.com/press_room/fullstory.sps?iType=13708&iNewsid=6642304&iCategoryID=12531
[8] http://www.topendsports.com/sport/gridiron/nfl-draft.htm
[9] http://www.nike.com/nikeos/p/sparqtraining/en_US/
[10] http://www.nike.com/nikeos/p/sparqtraining/en_US/training?srch=(%252B(training)%257C%257C(program_overview%255E20))&locale=en_US&start=0&facet=all&sport=all
[11] http://www.nike.com/nikeos/p/sparqtraining/en_US/ratings
[12] http://inside.nike.com/blogs/sparqtraining-en_US/2010/06/10/sparqtrainingcom-goes-mobile
[13] Drucker P.F. 1985, Innovation and Entrepreneur-ship, New York: Harper and Row
[14] Little A.D., 1997, The Global Survey on Innovation, Random House Business book
# Sport Innovation/Jessica Watson/Project Scope

Jessica Watson: The Youngest Person to Solo Circumnavigate the Globe
Background

# Project Scope
## Goals

Primary Goal:
Sail solo, unassisted and non-stop around the world.
Secondary Goal
Meet International Sailing Federation’s WSSRC criteria for world record status of round-the-world journeys.

## Priorities

Primary Priority
Safety, health and wellbeing of Watson.
Secondary Priority
Achieve record for youngest person to sail around the world solo, unassisted and non-stop.

## Alternative Strategies

Due to the nature of this project, it was likely for unforeseen circumstances, dangerous conditions and disadvantageous events to occur and be altered throughout the journey.
If deemed absolutely necessary and in order to remain as safe as possible, the following contingency plans applied:
* Seek assistance
* Obtain necessary parts for repairs
* Dock into a port
* Alter the route
* Cease circumnavigation

## Milestones

* January 2008 – Planning begins; spreading the word, gaining community and investment interest, boat purchased and refurbished, training and intense sailing undertaken, multi-skilled support team formed, potential sponsors approached.
* 13 May 2009 – Expedition formally announced (dates and goals established) and yacht unveiled
* 7 September 2009 – Ella’s Pink Lady collides with cargo ship whilst in transit from Mooloolaba to Sydney
* 31 August 2009 – Elle Baché Announced as Major Sponsor
* 18 October 2009 – Departed Sydney Harbour
* 19/22 November 2009 – Crossed equator (first time/second time)
* 25 December 2009 – Passed Point Nemo (part furthest from land)
* 13 January 2010 – Passed Cape Horn 11 days ahead of schedule
* 23 January 2010 – Suffered four knock-downs in severe storm
* 15 May 2010 – Returned to Sydney Harbour
* 29 July 2010 – “True Spirit” book is published
* 20 August 2010 – Documentary “210 Days” is released
* 25 January 2011 – Young Australian of the Year Title
* April 2011 – Ella’s Pink Lady jointly purchased by State & Federal Governments for $300, 000
* 26 January 2012 – Order of Australia Medal
* 20 August 2012 – Paramount Pictures announces “True Spirit” will be made into a movie
Project Lifecycle, Phases & Tasks
Evaluation of Project Outcomes
References
# Sport Innovation/Jessica Watson/Evaluation of Project Outcomes

Jessica Watson: The Youngest Person to Solo Circumnavigate the Globe
Background
Project Scope
Project Lifecycle, Phases & Tasks

# Evaluation of Project Outcomes

In determining whether the project was a success involves assessing whether the outcomes were achieved.
Project Goal 1
* Sail around the world solo, unassisted and non-stop: SUCCESSFUL.
Justification: Watson remained isolated, sought no assistance, did not stop on her journey.
Project Goal 2
* Satisfy requirements for International Sailing Federation’s WSSRC record: UNSUCCESSFUL.
Justification: Watson travelled 18, 582nmi; 3, 018nmi less than the official required distance of 21, 600nmi. (Knudsen, 2010).
From a project management perspective, the goals and objectives outlined by the team management were not completely met and therefore it would be unreasonable to declare the endeavour a complete success. However, from a personal perspective, Jessica Watson not only fulfilled her dream of solo-circumnavigating the globe, but achieved so much more than initially intended; several prestigious awards (Order of Australia, Young Australian of the Year, etc.) and numerous continuing marketing and publishing deals.
Overall Project Outcome: PARTIALLY SUCCESSFUL.
References
# Tanchangya/Dress

For weaving different types of cloths, alam is one the most important piece of cloth in Tanchangya culture. Since, in this small cloth most of the astonishing charts are woven, which is more like mathematical formula for doing all kinds of mathematics. During the weaving process, the small “alam kani” cloth should be nearby to look in time of weaving for various charts.

## Pi-nuin

It is a piece of cloth wears by Tanchangya woman to cover lower part of the body. It is loincloth. This has various kinds of chart woven according to the chart concerned in Tanchangya culture and dress. The colour may be different but the charts are not astray away from the cultural dress.

## Hari

It is also worn by Tanchangya woman to cover in the upper part of the body above the shirt. It is used around the neck and keeps for using during paying homage to the Buddha. This is indeed most gorgeous for its wonderful chart weaving.

## Khaw-bawng

It is turban mostly wears by woman. Only very important ceremony man wears it. It is woven with some other colour strip and large parts are in white colour.

## Sha-lum

It is blouse for woman with long hand. It is mostly wears by woman and made of with traditional weaving process.

## Pha-dui

it is waist-band uses by woman. Although they wear according to the way of wearing by folding, they tied more tightly with the waist-band on the loincloth.

## Bawt-duri

This is loincloth for man. This cloth is very long but circle around to cover the lower part of the body. It is more like legend that we could hear our ancestor wear bawt-duri. Nowadays, Tanchangya man wears only for souvenir and other documentary purpose. Other than that they are not use to. This loincloth is made of both indigenous and modern factory cloth.

## Khut-shalum

This is suit for man. It is rather thick and convenient in the winter season. It is sewed manually and design according to one choice.

## Conclusion

Actually we can say without hesitation that the traditional dresses in Tanchangya are mostly found in the woman. In case of Tanchangya man, they are not more use to wear only in the exceptional case of man who lives in the remote villages.
# Tanchangya/Grammar
## General Structure Way of Grammar

* Nouns
* Verbs
* Pronouns
* Adjectives

## Cases

* Nominative
* Accusative
* Instrumental
* Dative
* Dative
* Ablative
* Genitive
* Locative

## Verbal Terminations

* Past
* Present
* Future

## Persons

* First
* Second
* Third

## Numberss

* Singular
* Plural
# Tanchangya/Festival

Tanchangya people traditionally bound with culture in the mood of entertainment. IN fact, they enjoy particularly in a certain days. Those days are remarked as the day of festival in Tanchangya culture. There many festival but the most festival are as follow:
* Bisu Mela
* Boisaghi-mela
* Alpa-lawni-Mela